CentOS7 yum 报错:Could not resolve host: [mirrorlist.centos.org](https://mirrorlist.centos.org) 完整解决文档

 

 

问题现象

CentOS7 执行安装命令 yum install -y epel-release yum-utils 出现如下报错:

已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrorlist.centos.org/?arch=x86_64&release=7&repo=sclo-rh error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 未知的名称或服务"
One of the configured repositories failed (未知),
and yum doesn't have enough cached data to continue.
Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

 

报错原因

  1. CentOS7 官方已经停止维护,原官方源mirrorlist.centos.org域名解析失效,无法访问;
  2. 系统自带 yum 源地址已经失效,DNS 解析不到 centos 官方镜像域名,yum 无法获取软件包列表;
  3. 系统原 repo 配置文件全部为旧官方地址,需要替换为国内阿里云 vault 归档镜像源。

说明:你提供的这套解决方案可行,核心思路:备份原有旧 yum 源 → 替换为阿里云 CentOS7 vault 归档源 + 阿里云 EPEL 源 → 清理并重建 yum 缓存。

完整操作步骤(root 用户执行)

全部命令直接复制到服务器终端运行即可

1. 备份系统原有旧 yum 源配置

把系统原来所有.repo源文件移动到备份目录,防止原有错误配置干扰:

mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/ 2>/dev/null

 

2. 写入阿里云 CentOS‑7.9 vault 基础源

CentOS7 停止维护后,软件包存放在 vault 归档仓库,不能使用普通 centos 镜像地址。

cat > /etc/yum.repos.d/CentOS-Base.repo <<'EOF'
[base]
name=CentOS-7 - Base - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/$basearch/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-7 - Updates - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/updates/$basearch/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/$basearch/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-7 - Extras - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/extras/$basearch/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/$basearch/RPM-GPG-KEY-CentOS-7
EOF

 



image

 

3. 写入阿里云 EPEL 源配置

cat > /etc/yum.repos.d/epel.repo <<'EOF'
[epel]
name=EPEL - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/epel/7/$basearch/
enabled=1
gpgcheck=0
EOF

 

image

 


4. 清理旧缓存,生成新 yum 元数据缓存

yum clean all
yum makecache

 

image

 


5. 校验源是否生效

执行下面命令查看可用仓库列表,如果输出正常无报错代表源配置成功:

yum repolist

image

 


验证修复结果

源配置完成后,重新执行最初报错的安装命令测试:

yum install -y epel-release yum-utils

image

 

能够正常下载安装包,不再报Could not resolve host: mirrorlist.centos.org即为修复完成。

补充注意事项

  1. 服务器本身需要能访问外网,如果服务器不能上网,更换公网镜像源依然会失败;
  2. 这套源适用于 CentOS7.9,其他小版本 CentOS7 也可以使用 vault 7.9.2009 源;
  3. 如果后续还提示centos‑sclo‑rh仓库报错,这个是 SCL 软件集合源,可按需额外配置或者直接禁用该 repo;
  4. 备份的旧源文件存放在/etc/yum.repos.d/bak目录,需要恢复旧源的时候把 bak 下 repo 文件复制回/etc/yum.repos.d/即可。

常见额外问题处理

  • 若执行yum makecache报域名解析失败:检查服务器 DNS,可临时设置 DNS echo "nameserver 223.5.5.5" >> /etc/resolv.conf
  • 如果内网隔离环境,无法访问阿里云公网镜像,则需要搭建本地 yum 离线源。
posted @ 2026-09-24 16:39  程序员食堂  阅读(33)  评论(0)    收藏  举报