CentOS停服替代方案怎么选?如果你追求无缝过渡,首选 Rocky Linux 或 AlmaLinux(1:1 RHEL兼容);如果愿意换生态,Ubuntu Server LTS 是开发者的天堂;如果走国产信创,openEuler 和 Anolis OS 正在崛起。2024年6月30日 CentOS 7 正式 EOL 后(CentOS 7官方EOL公告),数百万服务器瞬间裸奔——没有安全补丁、没有软件更新、没有官方支持。
我知道这让人焦虑,我自己3台VPS也全是CentOS 7,停服那天真的睡不着。如果你的VPS还在裸奔,建议先看看VPS初始安全配置,做好基础防护再考虑迁移。但焦虑没用,行动才有价值——到底选哪个?我自己3台VPS从CentOS 7迁到Rocky 9踩了一路坑,先说选型,再说命令,踩坑实录全在这。如果你正在纠结CentOS停止维护后用什么系统,下面5大替代方案的深度对比会帮你做出选择。
关键要点
- CentOS 7已于2024年6月30日正式EOL,CentOS全系列均已停止维护,继续使用将面临安全漏洞无人修补、软件源失效、合规风险三大实际威胁
- Rocky Linux 和 AlmaLinux 是最稳妥的CentOS替代——1:1兼容RHEL,迁移成本最低,适合追求"无缝过渡"的用户
- Ubuntu Server LTS 生态最成熟,适合开发/容器/K8s场景,但包管理和配置习惯与CentOS差异较大
- openEuler/Anolis OS 是国产信创路线的选择,政策导向型企业优先考虑,但社区生态仍在成长期
- 实操推荐:CentOS 7→Rocky Linux 9 用Elevate工具链迁移,比原地migrate2rocky更稳妥;迁移前务必做资产盘点和影子环境验证
CentOS停服全景与替代方案选型基础:时间线与影响
CentOS的死亡不是一瞬间——6在2020年走了,8被红帽提前砍掉(原定2029年变2021年12月,红帽官方公告),7是2024年6月30日最后倒下的。Stream 9还在,但它不是你要的稳定系统。
CentOS各版本EOL时间线
CentOS的死亡不是一瞬间的事,而是一场持续几年的"慢性告别"。先看完整时间线:
| CentOS版本 | 原定EOL时间 | 实际EOL时间 | 状态 |
|---|---|---|---|
| CentOS 6 | 2020年11月30日 | 2020年11月30日 | ✅ 已停服 |
| CentOS 7 | 2024年6月30日 | 2024年6月30日 | ✅ 已停服 |
| CentOS 8 | 2029年5月31日 | 2021年12月31日(提前终止) | ✅ 已停服 |
| CentOS Stream 8 | — | 2024年5月31日 | ✅ 已停服 |
| CentOS Stream 9 | — | 2027年(跟随RHEL 9生命周期) | 🟡 仍在维护 |
这一刀砍下去,直接催生了 Rocky Linux 和 AlmaLinux 两个"接班人"(Rocky Linux官网)。而 CentOS 7 作为最后一根支柱,2024年6月30日倒下后,CentOS 时代彻底终结。想了解CentOS全系列停服时间线与影响深度解读,包括CentOS 9停止维护的完整背景,可以看这篇 CentOS全系列停服时间线与影响深度解读。
停服对你的3大实际影响
别觉得"停服而已,我服务器还在跑"就没事。继续用停服的CentOS,你面临的是三个越来越严重的问题:
1. 安全漏洞无人修补
这是最致命的。CentOS 7 EOL后,红帽不再发布任何安全补丁(包括内核、OpenSSL、SSH等关键组件)。新漏洞被发现后,你只能眼睁睁看着——没有官方修复,没有更新包。
2024年下半年以来,CVE漏洞库每月新增上百个影响Linux内核和核心服务的漏洞。没有补丁=裸奔在互联网上。如果你的服务器对外提供服务(Web、API、数据库),风险不是"可能被攻击",而是"迟早被攻击"。
2. 软件源逐步失效
CentOS官方镜像源在EOL后逐步迁移到 vault.centos.org(归档源),国内镜像站也在陆续下线CentOS 7的同步。
这意味着你yum install 或 yum update 可能直接报404。虽然可以手动切换到vault源继续用,但vault源只提供历史包,不提供任何新包和安全更新——本质上只是个博物馆,不是补给站。
3. 合规风险亮红灯
如果你的业务涉及等保测评、ISO 27001认证、金融监管合规,"使用已停止维护的操作系统"在审计中属于扣分项甚至不合规项。审计人员一看你的系统版本是CentOS 7,直接记录风险项,整改通知随后就到。
我朋友老张,做金融系统外包的,去年等保测评就因为一台CentOS 7测试服务器被扣了3分,整改期限30天。那30天他比赶deadline还焦虑——30天不够还得写整改报告。
CentOS停服替代方案:5大替代方案深度对比
关键要点
- Rocky Linux:社区驱动、1:1 RHEL兼容、CentOS创始人发起,迁移最顺滑
- AlmaLinux:非营利基金会运营、同样1:1兼容、更新响应略快于Rocky
- Ubuntu Server LTS:生态最丰富、文档最全、5年支持+ESM扩展至10年,但配置习惯差异大
- openEuler/Anolis OS:国产信创路线、政策导向型企业首选,社区生态快速成长中
- 云厂商Linux(Alibaba Cloud Linux / TencentOS):深度绑定平台、免迁移但有锁定风险
CentOS7替代方案选型不是选"最好的",而是选"最适合你的"。
Rocky Linux — CentOS的精神继承者
Rocky Linux 的名字来自 CentOS 创始人 Gregory Kurtzer——他用自己已故的宠物狗 "Rocky" 命名了这个项目。当红帽宣布砍掉CentOS 8时,Kurtzer当晚就发起了Rocky Linux,明确目标 做一个1:1兼容RHEL的社区发行版,填补CentOS留下的空白(Rocky Linux官网)。
核心优势:
- 100% RHEL兼容:二进制包级别兼容,你在CentOS上跑的任何东西在Rocky上都能跑
- RESF基金会治理: Rocky Enterprise Software Foundation确保项目不会被某一家公司独控
- 社区活跃度高: Release后48小时内镜像站即上线,bug响应速度快
- 国内镜像完善:阿里云、清华、中科大等均有Rocky镜像源
如果你只想无缝过渡,选它没错——yum/dnf命令习惯、服务管理方式、SELinux配置,全都不用改。
AlmaLinux — 另一个RHEL克隆
AlmaLinux 由 CloudLinux 公司发起(后来移交给独立的AlmaLinux OS Foundation),同样目标是1:1 RHEL兼容。名字来自"Alma"——拉丁语中"灵魂、滋养"的意思。
与Rocky的关键差异:
- 更新节奏略快:AlmaLinux通常在RHEL发布更新后24小时内同步,Rocky稍慢一点(但不影响实际使用)
- 商业支持更明确:CloudLinux公司提供付费支持选项,对需要商业保障的企业更友好
- OpenNebula集成:AlmaLinux与云平台OpenNebula有深度合作
和Rocky几乎一样的适用人群——除非你需要商业支持选项,或者你跑的是OpenNebula,那就优先AlmaLinux。
Ubuntu Server LTS — 转向Debian生态
Ubuntu是跳出RHEL生态的选择。从CentOS迁到Ubuntu,意味着你从yum/dnf换到apt,从SELinux换到AppArmor,从systemd-nsswitch换到Ubuntu自己的systemd配置——习惯差异不小。
核心优势:
- 生态无敌:几乎所有新软件、新框架第一时间支持Ubuntu,Docker/K8s文档默认用Ubuntu举例
- LTS支持10年:5年标准支持+5年ESM(Extended Security Maintenance,需Ubuntu Pro订阅),详见Ubuntu LTS官方生命周期
- 文档最丰富:AskUbuntu、官方文档、StackOverflow上的Ubuntu答案量远超其他发行版
- 云平台深度适配:AWS/Azure/GCP上的官方镜像,Ubuntu永远是最先上线的
核心代价:
- 包管理从yum变apt——运维脚本全要改
- 配置文件路径和习惯不同——/etc下的目录结构有差异
- 内核版本偏新——Ubuntu LTS用较新的内核,某些老硬件/驱动可能不兼容
开发团队、K8s重度用户别犹豫,直接Ubuntu。只想无缝过渡的运维?这不是你的路。
openEuler / Anolis OS — 国产信创路线
openEuler(华为发起,已交由openEuler社区运营,openEuler官网)和 Anolis OS(阿里云发起,龙蜥社区运营)是国产信创的两条路线。
openEuler:
- 华为深度参与,鲲鹏ARM架构优化最好
- 社区版本每2年一个LTS,支持4年
- 国内政企市场占有率快速增长
- 兼容RHEL生态程度约90%(不完全1:1)
Anolis OS:
- 阿里云深度绑定,在阿里云ECS上有官方镜像
- Anolis 8兼容RHEL 8约99%(几乎无缝)
- 龙蜥社区治理,国内企业参与度高
没有合规压力就不用考虑。等保/信创要求、鲲鹏ARM服务器、阿里云重度绑定——这三条满足任意一条才值得看。
云厂商Linux — 深度绑定平台的懒人选择
阿里云有 Alibaba Cloud Linux(现称Alibaba Cloud Linux 3),腾讯云有 TencentOS Server(现称TencentOS 3)。它们都是在RHEL基础上定制优化的云专属系统。
优势:云平台镜像直接选就行,不用自己迁移;内核针对云环境做了优化(网络、存储性能调优);云厂商提供技术支持。
代价:你被锁定在特定云平台了。阿里云Linux跑在腾讯云上?没官方支持。自建机房?没有镜像。如果你只用一家云且不打算迁出,这是最省事的路线。
替代方案对比决策表
来,一张表搞定选型决策:
| 维度 | Rocky Linux | AlmaLinux | Ubuntu LTS | openEuler | Anolis OS | 云厂商Linux |
|---|---|---|---|---|---|---|
| RHEL兼容性 | ⭐⭐⭐⭐⭐ 1:1 | ⭐⭐⭐⭐⭐ 1:1 | ⭐ 不兼容 | ⭐⭐⭐ ~90% | ⭐⭐⭐⭐⭐ ~99% | ⭐⭐⭐⭐ 基于RHEL定制 |
| 迁移难度 | 低(原地迁移) | 低(原地迁移) | 高(换生态) | 中 | 低(阿里云场景) | 极低(选镜像即可) |
| 支持周期 | 10年(跟随RHEL) | 10年(跟随RHEL) | 5+5年(ESM需订阅) | 4年LTS | 10年 | 依赖云厂商政策 |
| 国内镜像源 | ✅ 完善 | ✅ 完善 | ✅ 完善 | ✅ 完善 | ✅ 完善 | ✅ 内置 |
| 适合场景 | CentOS无缝过渡 | CentOS无缝过渡+商业支持 | 开发/容器/K8s | 信创/鲲鹏ARM | 阿里云+信创 | 单一云平台绑定 |
| 社区活跃度 | 高 | 高 | 极高 | 快速成长中 | 快速成长中 | 低(厂商社区) |
选定方案了?往后翻看迁移命令。还在纠结?继续看。
实操迁移:CentOS迁移到Rocky Linux 9 手把手指南
关键要点
- 迁移有两条路:原地迁移(用脚本/工具在现有系统上直接转换)和新建迁移(全新安装再迁移数据),后者更稳妥
- CentOS 7→Rocky Linux 9的原地迁移路径:先7→8(用Elevate/Leapp),再8→9(再跑一次Leapp),两次跳跃
- 迁移前必须做:资产盘点(记录所有服务/配置/自定义包)、影子环境搭建(克隆一台先测试)
- 迁移后必须验证:服务启动状态、端口监听、性能基线、安全配置完整性
迁移前准备(资产盘点+影子环境)
迁移不是"跑个脚本就完事"。动手之前,先做两件事:
1. 资产盘点清单
登录你的CentOS 7服务器,跑下面这些命令,把结果全部记录下来:
# 记录当前系统版本
cat /etc/redhat-release
uname -r
# 记录所有已安装的包(后续验证用)
rpm -qa > ~/installed-packages.txt
# 记录所有运行中的服务
systemctl list-units --type=service --state=running > ~/running-services.txt
# 记录所有监听端口
ss -tlnp > ~/listening-ports.txt
# 记录防火墙规则
iptables-save > ~/iptables-rules.txt
# 或 firewalld
firewall-cmd --list-all > ~/firewall-rules.txt
# 记录自定义配置文件位置
find /etc -name "*.conf" -newer /etc/centos-release > ~/custom-configs.txt
# 记录SELinux状态
getenforce
sestatus
# 记录磁盘和内存状态
df -h
free -m2. 影子环境搭建
如果你用的是阿里云或腾讯云,最简单的方式 从现有CentOS 7实例创建一个快照,然后从快照创建一台新实例作为测试环境。在这台影子环境上先跑一遍完整迁移流程,确认没问题后再在生产环境操作。
自建机房的话,用虚拟机克隆或者物理机冷备份还原的方式搭建影子环境。
关键原则:生产环境迁移前,影子环境必须先跑通一次完整流程。这不是浪费时间,是避免灾难。
使用Elevate工具链原地迁移(推荐路径)
CentOS 7 → Rocky Linux 9 不是一步到位的。因为7和9之间跨越了两个大版本,所以需要分两步走。ELevate是AlmaLinux社区开发的开源迁移框架(详见ELevate官方迁移工具和升级路径),支持CentOS 7到RHEL 8系发行版的原地升级。
第一步:CentOS 7 → Rocky Linux 8(使用ELevate + Leapp)
# 1. 更新现有CentOS 7到最新状态
sudo yum update -y
sudo reboot
# 2. 安装ELevate仓库
sudo yum install -y https://repo.almalinux.org/elevate/elevate-release-latest-el7.noarch.rpm
# 3. 安装Leapp升级工具和Rocky数据包
sudo yum install -y leapp-upgrade leapp-data-rocky
# 4. 运行Leapp预检查(生成评估报告)
sudo leapp preupgrade
# 查看评估报告,解决所有" inhibitor"问题
cat /var/log/leapp/leapp-report.txt
# 常见问题:需要删除某些不兼容的包、确认内核模块等
# 根据报告中的提示逐项解决
# 5. 执行升级
sudo leapp upgrade
sudo reboot重启后,你的系统就是 Rocky Linux 8 了。验证一下:
cat /etc/redhat-release
# 应显示:Rocky Linux release 8.x
# 确认关键服务都正常
systemctl list-units --type=service --state=running第二步:Rocky Linux 8 → Rocky Linux 9(再用Leapp)
# 1. 更新Rocky 8到最新
sudo dnf update -y
sudo reboot
# 2. 安装Leapp和Rocky 9升级数据
sudo dnf install -y leapp-upgrade leapp-data-rocky
# 3. 预检查
sudo leapp preupgrade
# 同样查看报告,解决inhibitor问题
# 4. 执行升级
sudo leapp upgrade
sudo reboot重启后验证:
cat /etc/redhat-release
# 应显示:Rocky Linux release 9.x
uname -r
# 内核应为 5.x 系列注意:如果Leapp预检查报告中有 "inhibitor"(阻断项),必须先解决才能升级。常见的inhibitor包括:未卸载的旧内核包、不兼容的第三方仓库、自定义内核模块等。不要忽略这些提示强行升级。
新装迁移方案(更稳妥的选择)
说实话,原地升级看起来方便,但两次大版本跳跃的风险不小。我3台VPS里2台都选了新装迁移——为什么?因为原地升级两次大版本跳跃太刺激了,我不想在生产环境赌。 更稳妥的方案是:全新安装Rocky Linux 9,然后迁移数据和服务配置。
步骤:
- 全新安装Rocky Linux 9:在云平台选择Rocky Linux 9镜像创建新实例,或物理机直接装
- 迁移服务配置:把之前资产盘点记录的配置文件(nginx.conf、应用配置、定时任务等)逐个拷过去
- 迁移数据:数据库dump导出再导入、文件用rsync同步、对象存储直接迁移
- 逐个验证服务:按资产盘点清单逐个确认
# 从旧服务器同步数据到新服务器(示例)
rsync -avz --progress /data/ new-server:/data/
rsync -avz --progress /etc/nginx/ new-server:/etc/nginx/
rsync -avz --progress /var/lib/mysql/ new-server:/var/lib/mysql/
# 在新服务器上验证
systemctl start nginx
systemctl start mariadb # 或 mysql
curl -I http://localhost # 验证Web服务新装迁移虽然工作量更大,但系统干净、没有残留的旧包冲突、迁移后稳定性更高。 生产环境我强烈推荐新装迁移。
迁移后验证清单
迁移完成后,别急着宣布胜利。按这个清单逐项确认:
# 1. 所有预期服务是否启动
systemctl list-units --type=service --state=running | diff ~/running-services.txt -
# 2. 口监听是否正确
ss -tlnp | diff ~/listening-ports.txt -
# 3. Web服务是否正常响应
curl -I http://your-server-ip
curl -I https://your-server-ip
# 4. 数据库是否正常连接
mysql -u root -p -e "SHOW DATABASES;"
# 5. 防火墙规则是否完整
firewall-cmd --list-all | diff ~/firewall-rules.txt -
# 6. SELinux状态是否符合预期
getenforce
# 7. 性能基线对比(与迁移前的记录对照)
# CPU/内存/磁盘IO
top
iostat 1 5
# 8. 自动化任务是否正常
crontab -l
systemctl list-timers每一条都确认OK后,才算迁移真正完成。
3台VPS真实迁移踩坑实录
这部分不是理论推演,是我自己手把手迁移3台VPS的真实经历。每台环境不同,踩的坑也不同。希望能帮你提前避开。
阿里云轻量服务器迁移
环境:阿里云轻量应用服务器,1核2G,跑着一个小型WordPress站和几个Python脚本。
迁移方式:新装迁移——因为轻量服务器支持直接切换系统镜像,比原地升级更简单。
踩坑:内核模块差异导致VPN服务异常
迁移完成后,我发现之前配置的VPN服务(SoftEther)启动失败。查了一圈,原因是 Rocky Linux 9 的内核(5.14+)移除了一些旧内核模块,SoftEther依赖的某个网络隧道模块在新内核中已不存在。
解决方案:
# 检查缺失的内核模块
modprobe <module-name>
# 如果报错 "module not found"
# 方案1:更新SoftEther到支持新内核的版本
# 方案2:换用wireguard(更现代,Rocky 9原生支持)
sudo dnf install -y wireguard-tools我最终选了方案2,改用WireGuard。如果你迁移后需要重新配置VPN,可以参考我之前写的VPS初始安全配置,里面的思路在Rocky Linux上同样适用。
教训:迁移前一定要检查所有自定义服务对内核模块的依赖。新版内核≠完全兼容旧模块。
腾讯云CVM迁移
环境:腾讯云CVM,2核4G,跑着一个API服务+MySQL,有比较复杂的防火墙规则。
迁移方式:新装迁移——创建新CVM实例选Rocky Linux 9镜像,数据rsync过去。
踩坑:安全组规则需同步更新
腾讯云的安全组规则是绑定在实例级别的。新创建的Rocky Linux 9实例有默认安全组,但我旧CentOS 7实例上绑定的自定义安全组(开放了API端口3306、8080等)不会自动跟着迁移。
这导致迁移完成后,API服务本身运行正常,但外部请求全被安全组挡住了。排查了20分钟才发现不是服务问题,是安全组问题。
解决方案:在腾讯云控制台手动将旧实例的安全组规则应用到新实例,或者用API批量操作:
# 获取旧实例的安全组ID
tccli cvm DescribeInstances --instance-ids ins-old-id | jq '.SecurityGroups'
# 将安全组绑定到新实例
tccli cvm ModifySecurityGroupsAttribute --instance-ids ins-new-id --security-group-ids sg-xxx教训:云平台迁移时,安全组/网络配置不会自动迁移。别忘了这一步。
自建机房物理机迁移
环境:自建机房的一台旧物理服务器,双路E5-2650,跑着Zabbix监控+内部Git服务。
迁移方式:原地迁移(用ELevate),因为这台物理机上有大量本地数据不想搬。
踩坑:硬件驱动兼容性
这台物理机用的是比较老的Broadcom NetXtreme II网卡(bcm5720系列)。Rocky Linux 9 内核中,这个网卡的驱动模块从tg3 换成了更新的版本,但固件版本太老导致新驱动加载失败——网卡直接不识别。
排查过程:
# 查看网卡状态
ip link
# 发现物理网卡没有出现在列表中
# 查看内核日志
dmesg | grep -i tg3
# 输出:tg3: firmware not responding
# 解决:更新网卡固件
# 从Broadcom官网下载最新固件,通过USB/DOS环境刷入刷完固件后,网卡正常识别,迁移才算真正完成。这个过程花了整整一个下午。
教训:物理机迁移前,逐个检查硬件驱动在新系统中的兼容性。特别是网卡、RAID卡、GPU这些需要专有驱动的设备。云服务器(虚拟硬件)基本不会有这个问题,但物理机一定要查。
迁移后SSH服务配置是安全加固的第一步——CentOS SSH服务配置完整步骤在Rocky Linux上完全通用。
CentOS Stream能用吗?适合什么场景
一句话:CentOS Stream不是替代方案,它是RHEL的预览通道,稳定性无保障,别拿生产环境赌。
Stream的定位(RHEL预览通道,非稳定下游)
CentOS Stream和之前的CentOS Linux根本不是同一个东西。旧CentOS是RHEL的"下游"——RHEL发布了补丁,CentOS才跟进,稳定性有保障。而Stream是RHEL的"上游"——更新先在Stream里发布,验证后才进入RHEL。
这意味着什么? 你在Stream上可能遇到RHEL还没有的更新,这些更新没有经过RHEL的完整测试流程。 对生产环境来说,这是不可接受的风险。
简单类比:
- CentOS Linux(旧版)= RHEL的"跟跑者"——大哥跑过验证过的路,小弟跟着走,安全
- CentOS Stream = RHEL的"探路者"——小弟先去未验证的路试探,大哥看了没问题才跟上
适用场景 vs 不适用场景
适合用Stream的:
- 你是RHEL生态的开发者/测试人员,想提前验证新特性
- 你参与CentOS Stream社区的bug反馈和贡献
- 非关键环境的个人实验/学习用途
绝对不适合用Stream的:
- 生产环境Web/API/数据库服务器——稳定性无保障
- 需要等保合规的场景——Stream不是"稳定发行版"
- 对补丁时效性要求高的业务——Stream的补丁节奏不确定性大
CentOS Stream不是CentOS停服替代方案。它是一个完全不同定位的产品,把它当替代方案用,等于从"已知风险"跳到"未知风险"。
迁移后的安全加固——CentOS停服替代方案落地最后一步
迁移到新系统后,趁热打铁把安全加固做完。这些配置在Rocky Linux 9上和CentOS几乎一样——毕竟是1:1兼容,命令照搬就行。如果你还没完成迁移,先回到上面的实操迁移指南做完再来看安全配置。
SSH密钥认证配置
SSH密码登录是最常见被暴力破解的入口。迁移后第一步: 禁用密码登录,只允许密钥认证。
# 1. 生成SSH密钥(在本地电脑上操作)
ssh-keygen -t ed25519 -C "your-comment"
# 2. 将公钥上传到服务器
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your-server
# 3. 确认密钥登录成功后,禁用密码登录
sudo vi /etc/ssh/sshd_config
# 修改以下配置:
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password # 或 no
# 4. 重启SSH服务
sudo systemctl restart sshd详细的SSH密钥认证和端口安全配置步骤,可以参考这篇完整指南。
防火墙规则迁移(firewalld配置差异)
CentOS 7用firewalld(或iptables),Rocky Linux 9也用firewalld,命令基本一样。但有一个小差异:Rocky 9的firewalld默认zone可能不同。
# 查看当前zone和规则
sudo firewall-cmd --get-default-zone
sudo firewall-cmd --list-all
# 设置默认zone(通常设为public)
sudo firewall-cmd --set-default-zone=public
# 开放必要端口(根据你的资产盘点清单)
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --add-port=3306/tcp # 如果需要MySQL远程访问
# 重载规则
sudo firewall-cmd --reload
# 验证
sudo firewall-cmd --list-all如果你原来用iptables而不是firewalld,迁移后建议统一切换到firewalld——管理更方便,语法更清晰。
SELinux策略调整
Rocky Linux 9默认SELinux是Enforcing模式,和CentOS 7一样。如果你原来把SELinux设成了Permissive或Disabled,迁移后建议恢复Enforcing并逐个解决策略冲突,而不是一关了之。
# 查看SELinux状态
getenforce
sestatus
# 如果是Permissive/Disabled,恢复Enforcing
sudo setenforce 1
sudo vi /etc/selinux/config
# 修改:SELINUX=enforcing
# 如果某些服务被SELinux阻止,查看审计日志
sudo ausearch -m avc -ts recent
# 根据审计日志生成策略模块
sudo audit2allow -a -M mypolicy
sudo semodule -i mypolicy.pp迁移+安全加固,一套做完才算真正完成。别迁完就松一口气,安全配置不做等于换了个新系统继续裸奔。
如果你的服务器涉及静态IP配置,迁移后可能需要重新设置网络——服务器静态IP和网络配置方法在Rocky Linux上同样适用(NetworkManager命令基本一致)。
常见问题FAQ
CentOS停服后必须马上迁移吗?
不建议拖延。CentOS 7 EOL后不再有安全补丁,继续使用等于裸奔。对外提供服务的服务器尤其危险,应尽快迁移。内部测试环境可稍缓,但也不应超过3个月。
CentOS 7迁移到Rocky Linux需要多长时间?
新装迁移(推荐方式):从创建新实例到服务验证完毕,单台VPS约30-60分钟。原地迁移(ELevate方式):两次大版本跳跃,单台约1-2小时(含预检查排障时间)。如果服务复杂、自定义配置多,预留2-4小时更稳妥。
Rocky Linux和AlmaLinux到底选哪个?
两者都是1:1 RHEL兼容,日常使用差异极小。如果你需要商业支持选项,选AlmaLinux(CloudLinux提供付费支持)。否则选Rocky Linux——社区更活跃,国内镜像更完善。
CentOS停服替代方案哪个最适合生产环境?
追求无缝过渡选Rocky Linux或AlmaLinux——命令习惯、配置路径、SELinux策略全部沿用,迁移成本最低。开发/容器场景选Ubuntu Server LTS,生态最丰富。合规/信创场景选openEuler或Anolis OS。
原地迁移和新建迁移哪个更好?
生产环境推荐新装迁移——系统干净、无旧包残留、稳定性更高。原地迁移适合数据量大不方便搬迁的物理机,但两次大版本跳跃风险较大,务必在影子环境先测试。
结论:CentOS停服替代方案与迁移路径
不管你是哪种情况——只想无缝过渡、想换生态、还是被合规逼着走——CentOS EOL后操作系统选择归根到底看需求,但有三件事没做到就别动迁移:资产盘点、影子验证、迁后确认加安全加固。做不到这三步,迁移就是赌博。
想归想不能胡思乱想——CentOS停服不是想不想迁的问题,是必须迁。为所为不能为所欲为——迁移要有章法,不能蛮干。
CentOS的时代确实结束了。但我这3台VPS活得比以前还好——Rocky跑得稳,WireGuard比SoftEther轻量,安全加固做完心里踏实。你还在等什么?
订阅 wenziju.com,第一时间收到 Rocky Linux 配置系列更新——包括LNMP搭建、Zabbix监控部署、WireGuard VPN配置等实战文章,每篇都有完整命令,没有废话。
版权属于:周晨
本文链接:https://wenziju.com/index.php/archives/1343/
本博客所有文章除特别声明外,均采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议。转载请注明出处!