yum -y update error with centos 7

Hiện tại nếu sử dụng lệnh

yum -y update

thì sẽ xuất hiện lỗi trên centos 7, 8. Nội dung lỗi như bên dưới

[root@vn ~]# yum -y update Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"

One of the configured repositories failed (Unknown), and yum doesn't have enough cached data to continue. At this point the only safe thing yum can do is fail. There are a few ways to work "fix" this:

1. Contact the upstream for the repository and get them to fix the problem.

2. Reconfigure the baseurl/etc. for the repository, to point to a working upstream. This is most often useful if you are using a newer distribution release than is supported by the repository (and the packages for the previous distribution release still work).

3. Run the command with the repository temporarily disabled yum --disablerepo= ...

4. Disable the repository permanently, so yum won't use it by default. Yum will then just ignore the repository until you permanently enable it again or use --enablerepo for temporary usage:

yum-config-manager --disable or subscription-manager repos --disable=

5. Configure the failing repository to be skipped, if it is unavailable. Note that yum will try to contact the repo. when it runs most commands, so will have to try and fail each time (and thus. yum will be be much slower). If it is a very temporary problem though, this is often a nice compromise:

yum-config-manager --save --setopt=.skip_if_unavailable=true

Cannot find a valid baseurl for repo: base/7/x86_64

Lỗi này thực chất là do server mirror để tải các thành phần update cho os cũ như centos 7 không còn tồn tại, phải đổi sang một tên miền dự phòng. Vậy nên các hướng dẫn như đổi DNS không cần thiết, bạn chỉ cần thực hiện 2 lệnh sau để thay đổi hàng loạt các chuỗi tên miền cũ thành tên miền mới cho link tải mirror

sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
0
Subscribe to my newsletter

Read articles from Gia Công Phần Mềm directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Gia Công Phần Mềm
Gia Công Phần Mềm

Blog Vietnamese about Open Source & Outsourcing Software.