Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Linux

Sửa lỗi: "Cannot find a valid baseurl for repo: base" trên yum (Fedora/CentOS/RHEL)

Nếu bạn dùng bản phân phối Linux với trình quản lý gói yum, bạn có thể thấy lỗi "Cannot find a valid baseurl for repo: base" ngay sau khi cài đặt xong hệ điều hành. Lỗi này phổ biến nhất trên Fedora, Red Hat, CentOS, nhưng cũng có thể gặp khi cập nhật yum trên SUSE tương thích. Thường chỉ xuất hiện khi chạy update, nhưng may mắn là có cách khắc phục khá đơn giản.

Cách 1: Buộc yum tìm baseurl

Thông báo lỗi cho thấy hệ thống Yellowdog Updater, Modified (yum) không thể truy cập base repository chứa thông tin gói. Để tái hiện, chạy sudo yum update (hoặc yum update nếu là root). Nếu lần này cập nhật thành công, lỗi chỉ do sự cố mạng nhất thời — bạn không cần làm gì thêm.

Sửa lỗi:  Cannot find a valid baseurl for repo: base  trên yum (Fedora/CentOS/RHEL)

Ngược lại, nếu tái hiện được lỗi, điều đầu tiên là kiểm tra kết nối mạng. Đảm bảo không bị mất kết nối Internet — đây là nguyên nhân phổ biến nhất. Nếu đã online mà vẫn không tìm thấy baseurl hợp lệ, thử ping mirrorlist.centos.org xem sao. Nhấn Ctrl+C dừng ping và xem kết quả. Nếu dùng Red Hat/Fedora, hãy thay URL mirrorlist mà lỗi báo thay vì URL CentOS chúng tôi dùng.

Nếu không ping được server, có thể server đang gặp sự cố tạm thời — hãy chờ. Nếu là sự cố mạng, thử đường dẫn như hình ảnh và chuyển dòng ONBOOT= thành yes hoặc no (thử cả hai). Sau khi set xong, chạy sudo dhclient (miễn là không qua ssh) và thử update yum lại. Nếu vẫn khó khăn, chỉnh sửa file đó lại.

Sửa lỗi:  Cannot find a valid baseurl for repo: base  trên yum (Fedora/CentOS/RHEL)

Bạn sẽ thấy tùy chọn NM_CONTROLLED, hãy đặt thành no. Nếu làm vậy, đảm bảo ONBOOT= cũng là no. Khi đặt thành no, chỉ gõ chữ thường vì một số phiên bản CentOS/Fedora có phân biệt chữ hoa/thường ở đây.

Sau khi chỉnh xong, đảm bảo cáp Ethernet gắn vào card mạng đầu tiên và chạy ifdown eth0; ifup eth0 để reset mạng. User CentOS 7 (như ví dụ) có thể không tìm thấy file này vì đã thay đổi. Lúc đó, tìm file như hình dưới hoặc pattern tương tự. Các nhà phát triển CentOS đã đổi tên một số interface mạng khi revamp bản minimal install.

Sửa lỗi:  Cannot find a valid baseurl for repo: base  trên yum (Fedora/CentOS/RHEL)

Khi mọi thứ ổn, thử update yum lại xem có chạy không.

Cách 2: Bỏ comment dòng baseurl

Trong vài trường hợp hiếm, lỗi không do mạng. Nếu chắc chắn đã online mà vẫn không chạy, hãy mở file như hình dưới với quyền root bằng trình soạn thảo yêu thích. Lại nhắc, nếu không dùng CentOS như chúng tôi, cần đổi tên file cho phù hợp.

Sửa lỗi:  Cannot find a valid baseurl for repo: base  trên yum (Fedora/CentOS/RHEL)

Bạn sẽ thấy dòng:
baseurl=https://mirror.centos.org/centos/$releasever/os/$basearch/

Đảm bảo dòng này không bắt đầu bằng ký tự comment#. Nếu có, hãy xóa nó và lưu file. Thử update lại. Lần này hệ thống sẽ cập nhật đúng vì đã tìm thấy dòng baseurl (trước đó bị ẩn bởi comment).