结论:CentOS 7.8 本身无法直接通过官方源正常更新系统补丁。
这是因为 CentOS 7 系列的官方支持生命周期(Standard Support)已于 2024 年 6 月 30 日 正式结束。自该日期起,CentOS Project 已停止维护传统的 centos 仓库,导致标准的 yum update 或 dnf update 命令将无法连接到有效的软件包源,从而报错(通常提示 "mirrorlist" 或 "baseurl" 无法访问)。
不过,您仍然有以下几种方案可以继续获取安全更新或维持系统运行:
1. 迁移至 CentOS Stream 7 (不推荐用于生产环境)
虽然 CentOS 7 停止了维护,但 CentOS Stream 项目曾提供过历史版本的归档,不过对于 CentOS 7 而言,更主流的做法是转向 CentOS Stream 的后续版本(如 Stream 8 或 Stream 9),但这意味着操作系统版本会升级,不再等同于原生的 CentOS 7.8。
2. 使用 Vault 镜像源进行手动更新(仅限旧补丁)
如果您必须停留在 CentOS 7 且仅需要安装历史遗留的补丁(无法获取新发布的安全补丁),可以将 /etc/yum.repos.d/ 下的配置文件修改为指向 Vault 归档地址。
- 操作方式:将
mirror.centos.org替换为vault.centos.org。 - 局限性:这只能让您下载过去发布的、截至 2024 年 6 月之前的补丁。新的安全漏洞修复(CVE)将不再可用,系统面临较高的安全风险。
3. 迁移至替代发行版(强烈推荐)
由于 CentOS 7 已完全停止维护,最安全、最可持续的方案是将业务迁移到以下替代版本之一,它们提供了与 RHEL 高度兼容的免费替代品:
- Rocky Linux 8/9:由 CentOS 创始人创建,旨在无缝替代 CentOS,完全兼容 RHEL。
- AlmaLinux 8/9:由非营利组织 CloudLinux 支持,同样致力于成为 RHEL 的完美替代品。
- Oracle Linux 8/9:Oracle 提供的免费企业级 Linux,兼容 RHEL。
4. 购买商业订阅(针对特定需求)
如果因合规性或遗留代码原因必须保留 CentOS 7 环境,您可以联系 EulerOS(华为开源社区版,部分兼容)、Red Hat(购买 RHEL 订阅并降级/兼容模式,成本较高)或寻找第三方供应商(如 Mirantis 等)提供的付费延长支持服务(Extended Life Cycle Support, ELS)。
建议操作步骤
如果您当前正在使用 CentOS 7.8,请立即执行以下检查:
- 尝试运行
yum check-update,确认是否出现连接错误。 - 如果是生产服务器,尽快制定迁移计划,将数据和应用迁移至 Rocky Linux 或 AlmaLinux。
- 在迁移完成前,切勿将服务器暴露在公网,以防未修复的高危漏洞被利用。
云小栈