新装 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 安装软件了。

相关推荐
梅雅达编程笔记8 分钟前
03_网页表格数据抓取
爬虫·python·beautifulsoup·pandas·数据采集
迅猛龙办公室9 分钟前
Python实现求两个数字之和
java·开发语言·python
企业数字化笔记20 分钟前
视频成片怎么稳定导出?编码选择、GPU/CPU降级与媒体交付验收
java·python·ffmpeg
0+11124 分钟前
Linux --应用层自定义协议与序列化
linux·运维·服务器·网络·tcp
明王明王25 分钟前
从零搭建一个 AI Infra 实验室⑫:Docker 为什么默认看不到 GPU
人工智能·docker·容器
天衍四九-28 分钟前
Docker Compose企业实战系列(四):Redis生产级部署|密码加固、持久化、内存优化完整方案
redis·docker·容器
dyxal28 分钟前
Linux Crontab 防重复执行利器:flock 文件锁实战详解(脱敏版)
linux·运维·服务器
niuTaylor30 分钟前
RK3568 Linux SDK 详解:SDK 是什么、板级差异与完整构建流程
linux·运维·服务器
拾贰_C38 分钟前
【Ubuntu | port】Linux进程端口号冲突问题解决
linux·运维·ubuntu
szial1 小时前
网络爬虫与 CDP 实战(一):网页数据到底在哪?从 HTTP 到分页采集
网络·爬虫·python·网络爬虫