雨云服务器 CentOS 7 可以通过官方迁移脚本原地升级到 AlmaLinux 8,但必须在操作前完成全量快照备份。此方案适用于 KVM 架构虚拟机,OpenVZ 架构不支持,主要风险在于引导加载程序配置错误导致无法远程连接。
先说结论:支持原地迁移,优先选择 AlmaLinux 8 版本以降低兼容性风险
- 适合:KVM 架构 VPS 且拥有 root 权限的实例
- 先看:控制台快照备份是否可用,网络配置是否为 DHCP 或静态 IP 已知
- 建议:升级后检查 SSH 端口和防火墙规则,避免锁定在外
命令速用版
curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/main/almalinux-deploy.sh
bash almalinux-deploy.sh为什么会这样
CentOS 7 已于 2024 年 6 月 30 日停止维护,官方不再提供安全更新。AlmaLinux 作为社区驱动的企业级 Linux 发行版,提供与 RHEL 1:1 二进制兼容的系统环境,官方提供了迁移脚本替换原有 yum 源和内核包。
分步处理
步骤 1:创建快照备份
在雨云控制台找到实例管理页面,执行“创建快照”或“备份”操作。这是唯一可靠的回滚手段,文件系统级别备份不足以恢复引导记录。
步骤 2:下载并运行迁移脚本
使用 root 用户登录 SSH,执行以下命令下载官方脚本并运行:
curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/main/almalinux-deploy.sh
chmod +x almalinux-deploy.sh
bash almalinux-deploy.sh脚本会自动检测系统版本,默认迁移至 AlmaLinux 8。过程中需确认多次提示,输入 yes 继续。
步骤 3:重启系统
迁移完成后必须重启才能加载新内核:
reboot怎么验证是否生效
重启后重新连接 SSH,执行以下命令检查系统版本和内核:
cat /etc/os-release
uname -r确认ID=almalinux且版本号不为 7。检查网络连通性 ping -c 4 8.8.8.8 确保网卡驱动正常。
常见坑
- 网络配置丢失:迁移可能重置网卡名称(如 eth0 变为 ens3),导致重启后无法连接,需通过控制台 VNC 修复。
- 第三方内核:如果雨云服务器使用了定制优化内核,迁移脚本可能会替换为标准内核,影响特定驱动性能。
- 软件源冲突:迁移前未清理第三方 yum 源可能导致依赖冲突,建议先备份/etc/yum.repos.d 目录。
常见问题
数据会丢失吗?
原地迁移不会格式化数据盘,但操作失误可能导致系统无法启动,必须依赖快照恢复。
能直接升级到 AlmaLinux 9 吗?
官方脚本默认推荐升级到 AlmaLinux 8,跨大版本升级到 9 风险较高,建议先升 8 再评估。
升级失败怎么回滚?
通过云服务商控制台的快照功能恢复实例状态,脚本本身不提供系统级回滚功能。
参考来源
- AlmaLinux Deploy GitHub, "almalinux-deploy", https://github.com/AlmaLinux/almalinux-deploy
- CentOS Wiki, "CentOS Lifecycle", https://wiki.centos.org/About/Product