新装 CentOS 7 切换 yum 源完整指南

问题背景

CentOS 7 在 2024 年正式结束生命周期(EOL),官方镜像源已停止维护。如果你在新安装的 CentOS 7 系统上使用 yum 安装软件,可能会遇到以下错误:

复制代码
Cannot find a valid baseurl for repo: base/7/x86_64

这是因为原有的 mirror.centos.org 镜像站点已经不再提供服务。本文将详细介绍如何手动修改 yum 源配置,切换到可用的 Vault 存档源。

什么是 Vault 源

Vault 是 CentOS 项目用于存档历史版本软件包的仓库。虽然 CentOS 7 已经 EOL,但其软件包仍然保存在 Vault 源中供用户使用。

解决方案:手动修改为 Vault 源

第一步:备份原有配置

在修改之前,先备份原有的源配置文件,以便出现问题时可以恢复:

bash 复制代码
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

第二步:编辑源配置文件

使用 vi 或其他文本编辑器打开配置文件:

bash 复制代码
vi /etc/yum.repos.d/CentOS-Base.repo

vi 编辑器操作提示:

  • i 键进入编辑模式
  • Esc 键退出编辑模式
  • 在命令模式下输入 :%d 清空文件内容
  • 输入 :wq 保存并退出

第三步:写入新的源配置

清空原文件内容后,将以下配置粘贴进去:

使用阿里云镜像源(推荐)
ini 复制代码
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

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

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

[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
使用清华大学镜像源(备选)
ini 复制代码
[base]
name=CentOS-$releasever - Base
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-$releasever - Updates
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.9.2009/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.9.2009/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[centosplus]
name=CentOS-$releasever - Plus
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.9.2009/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
使用中科大镜像源(备选)
ini 复制代码
[base]
name=CentOS-$releasever - Base
baseurl=https://mirrors.ustc.edu.cn/centos-vault/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-$releasever - Updates
baseurl=https://mirrors.ustc.edu.cn/centos-vault/7.9.2009/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.ustc.edu.cn/centos-vault/7.9.2009/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[centosplus]
name=CentOS-$releasever - Plus
baseurl=https://mirrors.ustc.edu.cn/centos-vault/7.9.2009/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

第四步:清理并重建缓存

保存配置文件后,执行以下命令清理旧缓存并生成新的缓存:

bash 复制代码
# 清理所有 yum 缓存
yum clean all

# 重建缓存
yum makecache

如果执行成功,会看到类似以下输出:

复制代码
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Metadata Cache Created

第五步:验证配置

测试 yum 是否可以正常工作:

bash 复制代码
# 查看可用的仓库列表
yum repolist

# 尝试安装一个小工具测试
yum install -y wget

如果能够正常显示仓库列表并成功安装软件包,说明配置成功。

配置文件说明

各个仓库的作用

  • [base]:CentOS 基础软件包仓库,包含系统核心组件
  • [updates]:系统更新和安全补丁仓库
  • [extras]:额外的软件包,不在基础仓库中但由 CentOS 官方维护
  • [centosplus]:增强型软件包,提供额外功能(默认禁用)

配置参数解释

  • name:仓库的描述名称
  • baseurl:软件包的下载地址
  • gpgcheck=1:启用 GPG 签名验证,确保软件包安全
  • enabled=0:禁用该仓库(需要时用 --enablerepo 启用)
  • gpgkey:GPG 公钥的位置

7.9.2009 版本说明

7.9.2009 是 CentOS 7 的最后一个稳定版本:

  • 7:CentOS 主版本号
  • 9:第 9 个更新版本
  • 2009:发布于 2020 年 9 月

其他可用的国内镜像源

根据你的地理位置和网络环境,可以选择速度最快的镜像源:

镜像站 地址
阿里云 https://mirrors.aliyun.com/centos-vault/
清华大学 https://mirrors.tuna.tsinghua.edu.cn/centos-vault/
中科大 https://mirrors.ustc.edu.cn/centos-vault/
华为云 https://mirrors.huaweicloud.com/centos-vault/
网易 https://mirrors.163.com/centos-vault/

常见问题

Q1:为什么要使用 7.9.2009 而不是其他版本?

A:7.9.2009 是 CentOS 7 的最终稳定版本,包含了所有安全更新和补丁。

Q2:修改源后还能接收安全更新吗?

A:由于 CentOS 7 已经 EOL,不会再有新的安全更新。建议考虑迁移到 Rocky Linux 或 AlmaLinux。

Q3:可以混用不同镜像源吗?

A:可以,但建议使用同一个镜像站的源,以确保软件包版本的一致性。

Q4:如何测试哪个镜像源最快?

A:可以使用 ping 命令测试延迟:

bash 复制代码
ping -c 4 mirrors.aliyun.com
ping -c 4 mirrors.tuna.tsinghua.edu.cn
ping -c 4 mirrors.ustc.edu.cn

总结

修改 yum 源配置是解决 CentOS 7 软件包安装问题的有效方法。通过切换到国内的 Vault 镜像源,可以继续使用 CentOS 7 系统。但请记住,这只是权宜之计,长远来看应该规划系统升级或迁移方案。

操作步骤回顾:

  1. 备份原配置文件
  2. 编辑 /etc/yum.repos.d/CentOS-Base.repo
  3. 替换为 Vault 源地址
  4. 清理并重建缓存
  5. 验证配置是否成功

完成这些步骤后,你的 CentOS 7 系统就可以正常使用 yum 安装软件了。

相关推荐
馨谙3 分钟前
OpenSSH 安全配置核心概念解析
linux·服务器·网络
半桔6 分钟前
【IO多路转接】IO 多路复用之 select:从接口解析到服务器实战
linux·服务器·c++·github·php
ink@re8 分钟前
Linux iptables:四表五链 + 实用配置
linux·运维·服务器
共享家952720 分钟前
Linux 信号控制
linux·服务器
墨利昂22 分钟前
Pytorch常用API(ML和DL)
人工智能·pytorch·python
努力努力再努力wz24 分钟前
【Linux进阶系列】:信号(下)
java·linux·运维·服务器·开发语言·数据结构·c++
SunnyDays101132 分钟前
Python 裁剪 PDF 教程:轻松裁剪页面并导出为图片
python·pdf裁剪·裁剪pdf页面·裁切pdf
JustNow_Man33 分钟前
Cline插件中clinerules的选择机制
python
☆璇1 小时前
【Linux】传输层协议UDP
linux·运维·udp
2401_841495641 小时前
【自然语言处理】Transformer模型
人工智能·python·深度学习·算法·语言模型·自然语言处理·transformer