原因
CentOS 7 已经正式停止维护(EOL),官方的 YUM 软件源镜像已经将旧版本的软件包移除或归档。
CentOS 7 于 2024年6月30日 结束了生命周期(EOL)。因此,原本指向 centos/7.9.2009/ 的链接在各大镜像源中都已经失效(返回 404 错误)。
解决方式
将 yum 的源地址切换到 CentOS Vault(归档源)
具体步骤
1. 进入 yum 源配置目录
bash
cd /etc/yum.repos.d/
2. 备份旧配置文件
bash
cp CentOS-Base.repo CentOS-Base.repo.bak \
&& cp CentOS-CR.repo CentOS-CR.repo.bak \
&& cp CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak \
&& cp CentOS-fasttrack.repo CentOS-fasttrack.repo.bak \
&& cp CentOS-Media.repo CentOS-Media.repo.bak \
&& cp CentOS-Sources.repo CentOS-Sources.repo.bak \
&& cp CentOS-Vault.repo CentOS-Vault.repo.bak \
&& cp CentOS-x86_64-kernel.repo CentOS-x86_64-kernel.repo.bak
3. 修改配置文件,将镜像地址指向 Vault
bash
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*.repo \
&& sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*.repo
4. 清理缓存并重新生成
bash
yum clean all && yum makecache
5. 重新尝试更新
bash
yum update -y
最后
由于 CentOS 7 已经停止维护,切换到 Vault 源后,将无法再获得任何安全补丁或新功能更新。这仅用于安装旧软件或维持现有系统的运行。
建议将操作系统迁移到仍在维护的发行版,例如 Rocky Linux、AlmaLinux(CentOS 的替代品)或 CentOS Stream 9。