ELevate 跨大版本原地升级
ELevate 是 AlmaLinux 社区发起的大版本原地升级工具集(升级框架 + 发行版数据包)。它解决的问题与迁移脚本不同:迁移是同大版本换发行版,ELevate 是同一台机器升到下一个大版本。
ELevate 是什么、边界在哪
Section titled “ELevate 是什么、边界在哪”官方对 ELevate 的定位:面向主流 EL 发行版的大版本原地升级,设计为一步升级(one-step upgrades);CentOS 7 这类跨度太大的场景官方明确要求拆分步骤(先升 7→8,再走 8→9),不要指望一条命令跨两级。边界还有两条:升级到 AlmaLinux 10 / AlmaLinux Kitten 10 的 x86_64_v2 架构目前仅由 ELevate NG 版本支持;树莓派镜像不在支持范围。
官方同时给出升级路径清单与各路径的系统要求(CentOS 7.9、Oracle Linux 7/8/9、AlmaLinux 8/9 等),动手前先对照清单确认你的源系统在支持范围内。
装 leapp 与目标发行版数据包
Section titled “装 leapp 与目标发行版数据包”ELevate 通过「数据包」适配不同目标发行版,装哪个数据包决定升到哪里:leapp-data-almalinux 升级到 AlmaLinux;leapp-data-centos 升级到 CentOS Stream;leapp-data-almalinux-kitten 用于从 AlmaLinux OS 9 升级到 AlmaLinux Kitten OS 10。官方还给出两项前置:系统先完整更新并重启;安装 elevate-release 仓库包(含项目仓库与 GPG 密钥)。
sudo yum update -ysudo rebootsudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el$(rpm --eval %rhel).noarch.rpmsudo yum install leapp-upgrade leapp-data-almalinuxsudo leapp preupgradesudo leapp upgrade先跑 leapp preupgrade 拿预检报告,把报告里的 inhibitors(阻断项)逐条清掉再执行 leapp upgrade;升级完成后重启进入新大版本。
第三方仓库的边界
Section titled “第三方仓库的边界”第三方仓库不是全部能跟着升:官方写明 EPEL 仅对升级到 AlmaLinux OS 的场景可用,且只覆盖 EL9 中在 EL10 仍然存在的包——EL9 有而 EL10 没有的包会在升级后留在系统里;Docker CE、MariaDB 等则在全部受支持系统上可用。升级前清点第三方仓库,升级后核对它们的状态。
中断与失败:先查官方问题清单
Section titled “中断与失败:先查官方问题清单”官方维护了一份 ELevate 常见问题清单,覆盖典型失败模式:initramfs 缺模块导致重启失败、/usr 空间不足、升级后 sssd 失效、升级后 dnf 更新报错等。遇到中断别盲试——先对照清单定位,再决定修复还是回滚。
- 迁移与升级回滚 — 回滚点与失败退路
- AlmaLinux 版本与支持承诺 — 升级目标版本的生命周期
- 内核与模块 — 升级后核对内核
- 官方:ELevate Quickstart Guide、ELevate Frequent Issues
- 枢纽:迁移矩阵总览