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

相关推荐
洋哥网络科技2 小时前
Centos系统替代选择
linux·运维·centos
带娃的IT创业者2 小时前
第4集:配置管理的艺术:环境变量、多环境配置与安全实践
开发语言·python·安全·项目配置·开发基础
礼拜天没时间.2 小时前
VMware安装虚拟机并且部署 CentOS 7 指南
linux·运维·centos·系统安装
de之梦-御风2 小时前
【MediaMTX】centos 7 安装MediaMTX
linux·运维·centos
领创工作室2 小时前
安卓设备分区作用详解-测试机红米K40
android·java·linux
JJJJ_iii2 小时前
【深度学习01】快速上手 PyTorch:环境 + IDE+Dataset
pytorch·笔记·python·深度学习·学习·jupyter
小晶晶京京2 小时前
day54-Zabbix(第三部分)
linux·运维·服务器·zabbix
---学无止境---3 小时前
linux中ioctl的工作流程以及ethtool是如何获取网络设备信息的
linux
。TAT。3 小时前
Linux - 进程状态
linux·学习