CentOS8停止服务,使用YUM源异常,解决方法

177bab2dbebdf3786c4661987d56d447

由于 CentOS 8 官方已于 2021 年 12 月 31 日 停止维护,其官方 YUM 源(mirror.centos.org)也随之停止提供服务。如果在尝试使用 YUM 安装或更新时遇到异常(如无法下载包或更新失败),可以通过以下方法解决问题。


1. 常见错误提示

在 CentOS 8 上运行 yum updateyum install 时,可能出现以下错误:

plaintext
Failed to download metadata for repo 'AppStream'
Error: Failed to download metadata for repo

或者:

plaintext
Cannot find a valid baseurl for repo: base/8/x86_64

2. 问题原因

  • CentOS 8 官方 YUM 源已停止服务。
  • 默认的 CentOS-Base.repo 文件指向的官方镜像地址不再有效。

3. 解决方法

方法 1:切换到 CentOS Vault 仓库

CentOS 官方提供了一个归档仓库(Vault),用于存储停止维护的 CentOS 版本的所有历史包。可以切换到 Vault 仓库继续使用。

3.1 替换 YUM 源配置

  1. 备份原始的 YUM 源配置文件:

    bash
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
  2. 创建新的 CentOS-Base.repo 文件:

    bash
    nano /etc/yum.repos.d/CentOS-Base.repo
  3. 添加以下内容:

    plaintext
    [BaseOS]
    name=CentOS-8 - Base
    baseurl=http://vault.centos.org/8.5.2111/BaseOS/$basearch/os/
    gpgcheck=1
    enabled=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
    
    [AppStream]
    name=CentOS-8 - AppStream
    baseurl=http://vault.centos.org/8.5.2111/AppStream/$basearch/os/
    gpgcheck=1
    enabled=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
    
    [extras]
    name=CentOS-8 - Extras
    baseurl=http://vault.centos.org/8.5.2111/extras/$basearch/os/
    gpgcheck=1
    enabled=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
  4. 清理 YUM 缓存并更新:

    bash
    yum clean all
    yum makecache
    yum update

方法 2:切换到 CentOS Stream

CentOS 8 的替代版本是 CentOS Stream 8,这是一个滚动更新的发布版本,提供持续支持。

3.1 迁移到 CentOS Stream

  1. 安装 centos-release-stream 包:

    bash
    dnf install -y centos-release-stream
  2. 切换到 CentOS Stream:

    bash
    dnf swap centos-linux-repos centos-stream-repos
    dnf distro-sync
  3. 验证迁移结果:

    bash
    cat /etc/centos-release

    输出应该类似于:

    plaintext
    CentOS Stream release 8

方法 3:切换到替代系统

如果不想继续使用 CentOS,可以考虑以下替代发行版,它们基于 RHEL 并且提供长期支持:

3.1 Rocky Linux

  • Rocky Linux 是完全兼容 RHEL 的社区驱动发行版。
  • 官方迁移工具:
    bash
    curl -O https://download.rockylinux.org/pub/rocky/8/rocky-tools/migrate2rocky.sh
    bash migrate2rocky.sh -r

3.2 AlmaLinux

  • AlmaLinux 是由 CloudLinux 推出的 RHEL 克隆版本,提供企业级支持。
  • 官方迁移工具:
    bash
    curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh
    bash almalinux-deploy.sh

3.3 Oracle Linux

  • Oracle Linux 是另一个 RHEL 克隆版本,可免费使用。
  • 迁移工具:
    bash
    curl -O https://linux.oracle.com/switch/centos2ol.sh
    bash centos2ol.sh

方法 4:手动下载 RPM 包

如果某些情况下无法切换 YUM 源,可以通过手动下载 RPM 包的方式安装软件:

  1. 前往 CentOS Vault 仓库:

  2. 使用 wget 下载:

    bash
    wget http://vault.centos.org/8.5.2111/BaseOS/x86_64/os/Packages/<package-name>.rpm
  3. 使用 rpm 安装:

    bash
    rpm -ivh <package-name>.rpm

4. 验证 YUM 源是否生效

完成上述配置后,验证 YUM 是否正常工作:

  1. 列出可用的软件包:

    bash
    yum list available
  2. 安装测试软件包:

    bash
    yum install -y vim

5. 总结

方法 优点 缺点
切换到 Vault 仓库 简单快速,继续使用 CentOS 8 没有安全更新,长期使用风险高
迁移到 CentOS Stream 持续更新,得到官方支持 是滚动更新版本,可能不适合生产环境
迁移到替代系统 提供长期支持,兼容 RHEL 需要迁移工具,部分配置可能需要调整
手动下载 RPM 包 不依赖 YUM 源,适合单独安装软件 操作复杂,手动管理依赖关系较麻烦

根据实际需求选择最合适的解决方案。如果需要长期支持,建议迁移到 Rocky Linux 或 AlmaLinux。

 
posted @ 2025-08-05 17:25  网硕互联  阅读(114)  评论(0)    收藏  举报