linux

Could not retrieve mirrorlist http://mirrorlist.centos.org/ CentOS 7

在使用CentOS 7的YUM包管理器时,可能会遇到如下错误:

Loaded plugins: fastestmirror
Determining fastest mirrors
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#7 - "Failed to connect to 2a05:d012:8b5:6503:9efb:5cad:348f:e826: Network is unreachable"

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=<repoid> ...

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 <repoid>
or
subscription-manager repos --disable=<repoid>

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=<repoid>.skip_if_unavailable=true

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

解决方案

为了修复此问题,可以将YUM配置中的镜像地址更改为CentOS的存档地址。以下是具体步骤:

1. 备份当前YUM配置文件

在进行任何更改之前,确保备份当前的YUM配置文件以防出现问题。运行以下命令:

cp -r /etc/yum.repos.d /etc/yum.repos.d.backup

2. 修改YUM配置文件

使用sed命令批量修改配置文件中的镜像地址。

# 将所有配置文件中的 mirrorlist 注释掉
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

# 将 baseurl 更改为存档地址
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

3. 更新YUM缓存

执行以下命令以更新YUM缓存并确保新的配置生效:

yum clean all
yum makecache

4. 验证YUM配置

尝试使用YUM安装或更新软件包,确保更改生效并且错误已解决。

yum update

通过以上步骤,你应该可以解决由于网络无法访问而导致的YUM错误。如果问题依旧,请检查网络连接或联系系统管理员以获取进一步支持。

留言

您的电子邮箱地址不会被公开。 必填项已用 * 标注