Nội dung
Hiện tại thì khá nhiều máy chủ sử dụng CentOS 6 gặp lỗi “YumRepo Error All mirror URLs are not using ftp http[s] or file
” khi sử dụng lệnh yum
để cập nhật phần mềm và cài đặt gói.
Và trong bài viết này AZDIGI sẽ giải thích nguyên nhân cũng như cách xử lý vấn đề này cho các bạn.
I. Nguyên nhân
Hệ điều hành CentOS 6 đã bị ngừng hỗ trợ vào ngày 30 tháng 11 năm 2020. Và hầu hết các kho lưu trữ mặc định của CentOS 6 đã không còn được sử dụng nữa. Dưới đây là danh sách các phiên bản PHP đã được phát hành cũng như thời gian được hỗ trợ.
Và lệnh yum
thì vẫn đang cố gắng kết nối với các kho lưu trữ không còn được sử dụng nữa. Và khi máy chủ CentOS 6 của bạn vẫn đang kết nối với máy chủ không còn tồn tại sẽ gặp lỗi dạng như sau:
YumRepo Error All mirror URLs are not using ftp http[s] or file.
Thêm một hình ảnh cho các bạn dễ hình dung.
Vì vậy, chúng ta sẽ cần cập nhật URL của kho lưu trữ mặc định về kho lưu trữ vault. Các thực hiện xin mời các bạn xem tiếp bài hướng dẫn này.
II. Khắc phục lỗi “YumRepo Error All mirror URLs are not using ftp http[s] or file”
Để khắc phục lỗi “YumRepo Error All mirror URLs are not using ftp http[s] or file
.” Chúng ta cần thực hiện theo hai bước sau.
Bước 1: SSH vào máy chủ của bạn
Để khắc phục lỗi “YumRepo Error All mirror URLs are not using ftp http[s] or file
.“, đầu tiên chúng ta cần SSH hoặc truy cập VPS hoặc máy chủ của bạn với quyền root trước. Hoặc ít nhất truy cập vào máy chủ với người dùng có quyền sudo
. Nếu bạn chưa biết cách SSH vào VPS hoặc Server của bạn thì bạn có thể tham khảo bài viết hướng dẫn sau:
Sau khi đã SSH thành công chúng ta tiếp tục với bước 2 để cập nhật lại danh sách mirrorlist‘s
.
Bước 2: Cập nhật mirrorlist‘s về kho lưu trữ vault
Đầu tiên để mọi thứ an toàn thì chúng ta nên sao lưu lại tệp tin chứa mirrorlist's
hiện tại với lệnh sau:
cp -pr /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.OLD
Sau đó chúng ta làm rỗng tệp tin chứa mirrorlist's
với lệnh sau:
echo > /etc/yum.repos.d/CentOS-Base.repo
Chúng ta tiếp tục sử dụng lệnh sau để chỉnh tệp mirrorlist's
:
vi /etc/yum.repos.d/CentOS-Base.repo
Tại đây các bạn hãy chọn i
để vào chế độ chỉnh sửa sau đó dán nội dụng sau vào và sau cùng là lưu lại:
[base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra baseurl=http://vault.centos.org/6.10/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #released updates [updates] name=CentOS-$releasever - Updates #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra baseurl=http://vault.centos.org/6.10/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra baseurl=http://vault.centos.org/6.10/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra baseurl=http://vault.centos.org/6.10/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib&infra=$infra baseurl=http://vault.centos.org/6.10/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Sau đó chúng ta chỉ cần xóa bộ nhớ đệm yum
bằng lệnh sau là xong.
yum clean all
Bây giờ bạn hoàn toàn có thể sử dụng lệnh yum
để cập nhật hệ thống hoặc cài đặt phần mềm mới.
III. Tổng kết
Chỉ với hai bước đơn giản là bạn đã có thể khắc phục được lỗi “YumRepo Error All mirror URLs are not using ftp http[s] or file.
” trên máy chủ của mình. Và vì CentOS 6 đã bị ngưng hỗ trợ nên bạn hãy may chóng chuyển dịch hạ tầng của mình lên hệ điều hành CentOS cao hơn như CentOS 7 (được hỗ trợ đến 2024) sẽ là giải pháp tốt hơn.
Mình sẽ cố gắn tìm hiểu và viết một bài hướng dẫn nâng cấp CentOS 6 lên CentOS 7 và cập nhật vào bài này để các bạn cùng xem và áp dụng.