先说结论:别纠结,直接选 CentOS 7 或 CentOS Stream 9。
但这里有个巨大的坑需要先排雷:如果你是在阿里云、腾讯云、华为云等国内主流厂商的控制台里找“CentOS”,你会发现很多老版本的镜像(比如 CentOS 6.10, 7.9)要么已经下架,要么变成了只读归档,甚至有的直接标红提示“EOL(停止维护)”。
为什么?因为 CentOS Linux 这个项目在 2024 年 6 月就已经正式终止了。Red Hat 官方不再提供新的 CentOS Linux 稳定版发布。这意味着,你以后很难再找到像以前那样稳定、长期支持且免费更新的“CentOS 8”或“CentOS 9”的标准 ISO 镜像了。
所以,现在的选择逻辑必须调整。以下是基于当前国内云计算环境的最优解建议:
1. 首选方案:CentOS Stream 9
这是目前最接近传统 CentOS 体验的替代品。
- 定位:它是 RHEL(Red Hat Enterprise Linux)的上游滚动预览版。简单说,它比 RHEL 更新快一点,但比 Fedora 稳定得多。对于大多数企业级应用来说,它的稳定性完全够用。
- 优点:
- 长期支持:有明确的 LTS 周期,未来几年内都有安全更新。
- 兼容性:二进制兼容 RHEL 9,如果你的业务是跑在 RHEL 生态上的(比如 Java 中间件、Oracle DB 等),迁移成本极低。
- 国内厂商支持好:阿里云、腾讯云、华为云的镜像仓库里,CentOS Stream 9 通常是默认推荐或容易找到的版本。
- 缺点:
- 不是“最终稳定版”,偶尔会有小变动,不适合对稳定性要求极高到“连一个补丁都不能变”的场景(这种场景请付费买 RHEL)。
- 包管理器从
yum变成了dnf(虽然命令别名还在,但底层变了)。
2. 次选方案:继续用 CentOS 7.9(仅限存量系统)
如果你的业务老旧,依赖大量 CentOS 7 特有的库或配置,且暂时无法迁移,那么 CentOS 7.9 仍然是可用的。
- 现状:虽然 EOL 了,但国内各大云厂商通常会将 CentOS 7.9 的镜像保留在“公共镜像”中,并提供一定时间的社区维护或第三方安全补丁(注意:这不是 Red Hat 官方支持)。
- 风险:
- 安全隐患:没有官方安全更新,一旦爆出内核漏洞,你得自己打补丁或者接受风险。
- 软件兼容性:新版的软件包(如新版 MySQL、Nginx、Python)可能不再提供 CentOS 7 的 RPM 包,你需要手动编译或使用第三方源(如 IUS、Remi),维护成本飙升。
- 建议:只用于测试环境或临时过渡,生产环境强烈建议尽快迁移。
3. 避坑指南:千万别碰这些
- CentOS 6/8:彻底淘汰。CentOS 6 早已 EOL 多年,CentOS 8 生命周期极短且已终止。国内云厂商基本不再提供标准镜像,即使有,也是历史归档,不具备任何安全性。
- “CentOS Plus”或“CentOS Minimal”非官方修改版:有些小厂商会打包一些带预装软件的镜像,尽量选官方提供的“Minimal”或“Standard”纯净版,避免被植入后门或冗余软件。
- 混淆 CentOS Stream 和 Rocky Linux/AlmaLinux:这两个是 CentOS 精神继承者,但在国内云厂商的镜像列表中,它们的支持度不如 CentOS Stream 广泛。除非你有特殊需求,否则优先选 Stream。
实际操作建议(以阿里云为例)
-
新建实例时:
- 在操作系统选择页,搜索 “CentOS Stream 9”。
- 如果找不到,看是否有 “Rocky Linux 9” 或 “AlmaLinux 9”,这也是很好的替代方案,尤其是如果你追求的是“RHEL 的克隆版”而非“上游预览版”。
- 重要:勾选“自动安装最新安全补丁”或类似选项(如果厂商提供)。
-
已有 CentOS 7 实例:
- 不要直接在原机升级!跨大版本升级(7 -> 9)极易失败,导致系统崩溃。
- 正确做法:创建一台新的 CentOS Stream 9 实例,将数据和应用逐步迁移过去,验证无误后下线旧机器。
-
网络源配置:
- 由于 CentOS 官方源已关闭,国内云厂商通常会预配好本地镜像源(如阿里源、清华源)。
- 安装后第一件事:检查
/etc/yum.repos.d/下的 repo 文件,确保指向的是有效的国内镜像站,而不是已失效的mirror.centos.org。
总结
| 场景 | 推荐版本 | 理由 |
|---|---|---|
| 新项目/生产环境 | CentOS Stream 9 | 稳定、有更新、国内支持好、兼容 RHEL 9 |
| 老旧系统迁移过渡 | CentOS 7.9 | 仅用于短期存在,需自行关注安全补丁 |
| 追求 RHEL 完全克隆 | Rocky Linux 9 / AlmaLinux 9 | 如果云厂商提供,可作为 Stream 的备选 |
| 任何情况 | ❌ CentOS 6/8 | 已死,勿用 |
最后提醒一句:技术选型要向前看。CentOS 的时代已经结束,拥抱 Stream 或其他 RHEL 衍生版,才是长久之计。
云技术博客