Nếu bạn đang sử dụng bất kỳ bản phân phối Linux nào sử dụng trình quản lý gói yum, thì bạn có thể gặp lỗi thông báo Không thể tìm thấy baseurl hợp lệ cho repo:base ngay sau khi bạn cài đặt xong hệ điều hành. Đây là lỗi phổ biến nhất liên quan đến các bản phân phối Fedora, Red Hat và CentOS Linux, nhưng bạn cũng có thể mắc phải lỗi này khi cố gắng cập nhật yum trên các phiên bản tương thích của SUSE. Thông thường, bạn sẽ chỉ gặp lỗi khi cố gắng cập nhật, nhưng may mắn thay, có một cách khá đơn giản để khắc phục lỗi này.
Phương pháp 1:Buộc bạn phải tìm một baseurl
Thông báo lỗi này cho biết rằng, vì bất kỳ lý do gì, hệ thống Yellowdog Updater, Modified (yum) không thể truy cập vào cơ sở mà nó sử dụng để tìm thông tin gói. Để tạo lại thông báo lỗi, hãy chạy sudo yum update hoặc đơn giản là cập nhật yum nếu bạn là người dùng root. Nếu cập nhật lần này, thì lỗi chỉ là do trục trặc mạng và bạn không cần phải làm gì khác.
Mặt khác, bạn có thể thấy rằng bạn đã tạo lại thông báo lỗi. Điều đầu tiên cần kiểm tra là đảm bảo rằng bạn đã kết nối với mạng. Bạn sẽ muốn chắc chắn rằng mình không gặp phải tình trạng ngắt kết nối Internet, đây là nguyên nhân phổ biến nhất gây ra lỗi này. Nếu bạn đang truy cập Internet mà vẫn không thể tìm thấy baseurl hợp lệ, hãy thử ping mirrorlist.centos.org và hãy xem chuyện gì xảy ra. Nhấn Ctrl + C để kết thúc quá trình ping và xem kết quả bạn nhận được. Nếu bạn đang sử dụng Red Hat hoặc Fedora, thì bạn có thể muốn thay thế URL danh sách phản chiếu mà lỗi đã báo cho bạn thay vì URL CentOS mà chúng tôi đã sử dụng.
Nếu bạn không thể ping các máy chủ, thì bạn có thể phải đợi vì chúng có thể gặp sự cố tạm thời. Nếu không, nếu bạn đang gặp sự cố mạng, hãy thử đường dẫn được hiển thị trong hình ảnh và chuyển dòng ONBOOT =thành có hoặc không. Bạn có thể muốn thử cả hai. Khi bạn đã thiết lập xong, hãy chạy sudo dhclient miễn là bạn không làm việc thông qua ssh và sau đó cố gắng cập nhật lại yum. Nếu bạn vẫn gặp khó khăn trong việc yêu cầu trình quản lý gói cập nhật, hãy thử chỉnh sửa lại tệp đó.
Bạn sẽ tìm thấy một tùy chọn có tên là NM_CONTROLLED mà bạn nên đặt thành không. Nếu bạn làm điều này, thì hãy đảm bảo rằng ONBOOT =cũng được đặt thành không. Khi bạn đặt các tùy chọn thành không, hãy đảm bảo rằng bạn chỉ nhập các từ bằng chữ thường vì một số phiên bản của CentOS và Fedora thực sự có thể có một số loại phân biệt chữ hoa chữ thường về mặt này.
Sau khi hoàn tất chỉnh sửa tệp, hãy đảm bảo rằng bạn đã gắn cáp Ethernet vào giao diện mạng đầu tiên trên máy và thử chạy ifdown eth0; ifup eth0 để thiết lập lại mạng. Người dùng CentOS 7, như trong ví dụ của chúng tôi, có thể không tìm thấy tệp này vì mọi thứ đã thay đổi. Nếu đúng như vậy, hãy thử tìm những gì được hiển thị trong hình ảnh bên dưới hoặc thứ khác giống với mẫu đó. Các nhà phát triển của CentOS đã quyết định thực hiện một số thay đổi vào lần cuối họ cải tiến mã cài đặt tối thiểu và do đó đã thay đổi tên của một số giao diện mạng.
Khi mọi thứ đã ổn, hãy thử cập nhật lại yum và xem nó có hoạt động không.
Phương pháp 2:Bỏ chú thích baseurl
Trong một số trường hợp hiếm hoi, lỗi này có thể không phải do sự cố mạng. Nếu bạn chắc chắn rằng mình đã kết nối nhưng vẫn không thể làm việc gì đó, hãy mở tệp được hiển thị trong hình ảnh bên dưới làm siêu người dùng gốc với trình soạn thảo văn bản yêu thích của bạn. Một lần nữa, nếu bạn không sử dụng CentOS như chúng tôi thì bạn sẽ cần thay đổi tên đơn giản để tìm đúng tệp.
Bạn sẽ thấy một dòng có nội dung:
baseurl =https://mirror.centos.org/centos/$releasever/os/$basearch/
Đảm bảo rằng điều này không bắt đầu bằng cờ nhận xét như ký hiệu #. Nếu có, hãy xóa nó và sau đó lưu tệp. Hãy thử cập nhật lại. Điều này lẽ ra buộc hệ thống phải cập nhật đúng cách vào thời điểm này, điều mà hệ thống không thể thực hiện được nếu không thể tìm thấy dòng này vì nó đã bị cờ nhận xét ẩn.