明白 👍 阿杰。CentOS 8 已在 2021 年底停止维护(EOL),所以你现在遇到 YUM 源失效 的问题是正常的。解决方法主要有以下几种:


一、问题原因

  • CentOS 官方已不再维护 CentOS 8 的 YUM 源,原有的 mirror.centos.orgvault.centos.org 链接失效。
  • 现在需要切换到 CentOS Vault(存档源) 或国内镜像(阿里云、清华、中科大等)。

二、解决方法

1. 切换到 CentOS Vault 存档源

编辑 YUM repo 文件:

cd /etc/yum.repos.d/

替换源(以 CentOS-Base.repo 为例):

sed -e 's|mirror.centos.org|vault.centos.org|g' \
    -e 's|mirrorlist=|#mirrorlist=|g' \
    -e 's|#baseurl=http|baseurl=http|g' \
    -i CentOS-Base.repo

这样就会使用 CentOS Vault 存档源,例如:

baseurl=http://vault.centos.org/8.5.2111/BaseOS/$basearch/os/
baseurl=http://vault.centos.org/8.5.2111/AppStream/$basearch/os/

更新缓存:

yum clean all
yum makecache


2. 使用国内镜像(推荐)

例如 阿里云 CentOS Vault 源

cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak

wget http://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo -O CentOS-Base.repo

然后执行:

yum clean all
yum makecache


3. 使用 Stream 代替(官方推荐)

CentOS 8 已停止更新,官方建议升级到 CentOS Stream 8

dnf install centos-release-stream
dnf swap centos-linux-repos centos-stream-repos
dnf distro-sync


三、推荐方案

  • 短期修复:切换到 vault 源 或国内镜像 → 能继续使用 yum 安装包。
  • 长期方案:迁移到 CentOS Stream 8 或 Rocky Linux / AlmaLinux 等替代发行版。

好的阿杰 👍 我给你写一个 一键切换阿里云 CentOS8 vault 源的脚本,直接运行就能解决 YUM 失效问题。


一键修复脚本(bash)

#!/bin/bash
# 修复 CentOS8 YUM 源失效,切换到阿里云 Vault 源

echo ">>> 备份原有 YUM 配置..."
mkdir -p /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/ 2>/dev/null

echo ">>> 下载阿里云 CentOS8 Vault 源配置..."
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

echo ">>> 清理缓存并生成新缓存..."
yum clean all
yum makecache

echo ">>> 已完成!请尝试运行 'yum update' 测试。"


使用方法

  1. 新建脚本文件:nano fix-centos8-yum.sh
  2. 把上面的脚本内容粘贴进去,保存退出。
  3. 给脚本执行权限:chmod +x fix-centos8-yum.sh
  4. 运行:./fix-centos8-yum.sh
  5. 完成后,你就可以正常使用:yum update yum install vim wget net-tools -y