CentOS :yum源配置及验证指南
你需要配置 CentOS 8 的 yum 源(CentOS 8 中 yum 底层已基于 DNF 实现,配置方式与传统 yum 兼容),核心是替换默认的官方源(可能访问缓慢或已停止维护)为国内镜像源(如阿里云、清华大学),以下是完整步骤、避坑指南、验证方法,确保配置后可正常安装软件包。
一、前置准备
1. 核心前提
-
CentOS 8 系统已正常启动,拥有 root 权限(所有操作需用
root用户或sudo执行)。 -
网络通畅,能访问国内镜像源服务器(可先
ping mirrors.aliyun.com测试网络连通性)。 -
备份默认 yum 源(避免配置出错无法回滚)。
2. 检查当前 yum 源状态
Bash
# 查看当前已启用的 yum 仓库
dnf repolist enabled
# 若提示「仓库无可用软件包」或访问超时,说明默认源不可用,需替换
3. 安装必要工具(可选,确保操作顺利)
Bash
dnf install -y wget tar vim
二、步骤1:备份默认 yum 源(必做,防止回滚无门)
CentOS 8 的 yum 仓库配置文件存放在 /etc/yum.repos.d/ 目录下,先备份该目录下所有 .repo 文件:
Bash
# 创建备份目录
mkdir -p /etc/yum.repos.d/bak
# 移动所有默认 .repo 文件到备份目录
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
三、步骤2:替换为国内镜像源(二选一,推荐阿里云)
国内常用镜像源:阿里云 (速度快、稳定,适合生产环境)、清华大学(更新及时,适合开发/测试环境),选择其中一种即可。
方案1:替换为 阿里云 CentOS 8 镜像源(推荐)
-
进入 yum 配置目录:
Bashcd /etc/yum.repos.d/ -
下载阿里云 CentOS 8 对应的 repo 配置文件(注意 CentOS 8 已停止官方维护,阿里云提供了
centos-vault镜像):Bash# 下载 CentOS 8.5 版本 repo 文件(适配绝大多数 CentOS 8 系统) wget https://mirrors.aliyun.com/repo/Centos-8.repo -
(可选)若 wget 下载失败,可手动创建 repo 文件:
Bashvim /etc/yum.repos.d/Centos-8.repo粘贴以下内容(完整阿里云镜像源配置,直接复制即可):
TOML[base] name=Centos-8 - Base - mirrors.aliyun.com baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/BaseOS/$basearch/os/ gpgcheck=1 gpgkey=https://mirrors.aliyun.com/centos-vault/8.5.2111/RPM-GPG-KEY-CentOS-Official [appstream] name=Centos-8 - AppStream - mirrors.aliyun.com baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/AppStream/$basearch/os/ gpgcheck=1 gpgkey=https://mirrors.aliyun.com/centos-vault/8.5.2111/RPM-GPG-KEY-CentOS-Official [extras] name=Centos-8 - Extras - mirrors.aliyun.com baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/extras/$basearch/os/ gpgcheck=1 gpgkey=https://mirrors.aliyun.com/centos-vault/8.5.2111/RPM-GPG-KEY-CentOS-Official [powertools] name=Centos-8 - PowerTools - mirrors.aliyun.com baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/PowerTools/$basearch/os/ gpgcheck=1 gpgkey=https://mirrors.aliyun.com/centos-vault/8.5.2111/RPM-GPG-KEY-CentOS-Official -
保存并退出(vim 中按
Esc,输入:wq回车)。
方案2:替换为 清华大学 CentOS 8 镜像源
-
进入 yum 配置目录:
Bashcd /etc/yum.repos.d/ -
下载清华大学 CentOS 8 repo 配置文件:
Bashwget https://mirrors.tuna.tsinghua.edu.cn/repo/Centos-8.repo -
若下载失败,可参考清华大学开源镜像站官方文档手动创建配置文件(地址:https://mirrors.tuna.tsinghua.edu.cn/help/centos/)。
四、步骤3:清理并生成 yum 缓存(必做,使新源生效)
Bash
# 1. 清理旧的 yum 缓存
dnf clean all
# 2. 生成新的 yum 缓存(耗时根据网络速度而定,耐心等待)
dnf makecache
# 若提示「GPG 密钥验证成功」,说明缓存生成正常
五、步骤4:验证 yum 源配置是否生效
通过安装一个简单的软件包(如 tree),测试新 yum 源是否能正常下载并安装:
Bash
# 安装 tree 工具
dnf install -y tree
# 验证安装结果
tree --version
-
若能正常下载并安装,且无超时/404 错误,说明 yum 源配置成功。
-
也可再次查看启用的仓库,确认新镜像源已生效:
Bashdnf repolist enabled输出结果中会显示
mirrors.aliyun.com或mirrors.tuna.tsinghua.edu.cn,即为生效。
六、特殊场景:配置 EPEL 源(额外软件包仓库,可选)
CentOS 官方 yum 源包含的软件包有限,EPEL(Extra Packages for Enterprise Linux)提供了大量额外的开源软件包,配置方法如下:
Bash
# 1. 安装 EPEL 源(阿里云镜像)
dnf install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
# 2. 编辑 EPEL 配置文件,替换为阿里云镜像(默认可能是官方源)
sed -i 's|^baseurl=.*|baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/|' /etc/yum.repos.d/epel.repo
sed -i 's|^#baseurl=.*|#baseurl=.*|' /etc/yum.repos.d/epel.repo
sed -i 's|^mirrorlist=.*|#mirrorlist=.*|' /etc/yum.repos.d/epel.repo
# 3. 生成 EPEL 缓存
dnf makecache
# 4. 验证 EPEL 源(安装一个 EPEL 中的软件,如 htop)
dnf install -y htop
七、核心避坑点(CentOS 8 专属,90%的配置失败源于此)
-
CentOS 8 官方源已停止维护 :CentOS 8 于 2022 年 12 月 31 日停止官方更新,默认官方源已无法访问,必须使用
centos-vault(归档镜像),不可直接使用 CentOS 7 的 repo 配置。 -
repo 文件版本匹配 :下载的 repo 文件需与系统版本匹配(如 CentOS 8.5 对应
8.5.2111),可通过cat /etc/centos-release查看系统版本。 -
网络与防火墙:确保系统能访问外网,防火墙/安全组未拦截 80/443 端口(镜像源通过 HTTP/HTTPS 传输)。
-
GPG 密钥验证失败:若提示 GPG 密钥验证失败,可手动导入密钥(以阿里云为例):
Bashrpm --import https://mirrors.aliyun.com/centos-vault/8.5.2111/RPM-GPG-KEY-CentOS-Official -
权限问题 :确保
/etc/yum.repos.d/目录及其中的.repo文件权限为644,目录权限为755,否则 DNF 无法读取配置。
八、常用扩展命令(yum/DNF 通用)
| 场景 | 命令 |
|---|---|
| 查看所有仓库 | dnf repolist all |
| 搜索软件包 | dnf search 软件包名(如 dnf search tree) |
| 查看软件包详情 | dnf info 软件包名(如 dnf info tree) |
| 卸载软件包 | dnf remove -y 软件包名(如 dnf remove -y tree) |
| 升级所有软件包 | dnf update -y |
总结
-
核心步骤:备份默认源 → 下载国内镜像 repo 文件 → 清理缓存 → 生成新缓存 → 验证,全程需用 root 权限。
-
推荐镜像:优先选择阿里云,速度快、稳定,适配生产环境;清华大学镜像更新及时,适合开发场景。
-
避坑关键:CentOS 8 需使用
centos-vault归档镜像,不可使用官方默认源,且需匹配系统版本。 -
额外优化:配置 EPEL 源可获取更多软件包,满足额外的软件安装需求。
若配置后仍无法正常使用,可检查 repo 文件中的 baseurl 是否正确,或测试网络是否能访问对应的镜像源地址。