发行版升级本质是系统重装级变更,须人工主导全程监控,不能用apt upgrade或dnf update完成;需确认EOL、驱动缺失或依赖不满足等必要条件,再按Ubuntu用do-release-upgrade、CentOS 7迁Rocky用ELevate等官方路径操作,并严格完成备份、空间检查、镜像源切换及升级后清理验证。

升级整个操作系统的发行版本,不是日常更新软件包,而是跨大版本迁移,比如从 Ubuntu 20.04 升到 22.04,或从 CentOS 7 升到 Rocky Linux 8。这类操作本质是系统重装级变更,必须人工主导、全程监控,不能靠 apt upgrade 或 dnf update 完成。
先确认是否真需要发行版升级
多数用户其实只需定期更新(apt update && apt upgrade),它只打补丁、升小版本内核、修漏洞,不改系统基础架构。只有当出现以下情况时,才考虑发行版升级:
- 当前版本已终止支持(EOL):例如 Ubuntu 20.04 LTS 支持到 2025 年 4 月,现在(2026 年 9 月)早已过期,软件源停止推送安全更新
- 硬件驱动严重缺失:新显卡、WiFi 芯片在旧内核中无法识别,且无 backport 补丁可用
- 关键依赖无法满足:如 Docker、Kubernetes 或开发工具链要求 glibc ≥ 2.35,而当前系统仅提供 2.28
按发行版选择对应升级工具
不同系统有官方支持的迁移路径,切勿混用命令或强行套用其他发行版流程:
-
Ubuntu(LTS 到 LTS):运行
sudo do-release-upgrade。它会自动检测是否有新 LTS 版本(如 22.04 → 24.04),下载元数据并引导交互式升级。加-d参数会跳过稳定版直奔开发版,生产环境禁用 -
Debian:编辑
/etc/apt/sources.list,把所有bookworm替换为trixie(以当前最新稳定版为准),再执行sudo apt update && sudo apt full-upgrade。过程需多次确认,部分服务可能需手动重启 -
RHEL/CentOS Stream:不支持直接跨主版本升级。CentOS 7 用户应迁移到 Rocky Linux 8 或 AlmaLinux 9;RHEL 8 用户可通过
dnf system-upgrade升至 RHEL 9(需订阅支持) -
Fedora:使用
dnf system-upgrade,先下载新版本包:sudo dnf system-upgrade download --releasever=40,再执行sudo dnf system-upgrade reboot
升级前必须做的三件事
跳过任一环节都可能导致启动失败、服务中断或数据丢失:
-
完整备份:至少保留
/etc(配置)、/home(用户数据)、/var/www(网站)等关键目录的离线副本。推荐用rsync -aHAX保留权限与扩展属性 -
检查磁盘空间:根分区(/)建议预留 ≥10GB 空闲,
/boot分区需 ≥1GB(因要同时存新旧内核镜像)。运行df -h确认 -
切换为国内镜像源:避免升级中途因源响应慢或超时中断。Ubuntu 可用清华源,CentOS Stream 可用阿里云源,更新后运行
sudo apt clean && sudo apt update或sudo dnf makecache
升级后关键收尾动作
升级完成不等于万事大吉,以下步骤决定系统能否长期稳定运行:
-
清理旧内核:Ubuntu 执行
sudo apt autoremove --purge,RHEL/CentOS 运行sudo dnf autoremove kernel(注意不是kernel-core),避免/boot爆满导致下次无法升级 -
验证默认启动项:运行
uname -r确认当前内核版本,再用grep menuentry /boot/grub/grub.cfg | head -n5查看 GRUB 菜单第一项是否为新版本。若不是,用sudo grub-set-default 0(Ubuntu)或sudo grub2-set-default 0(RHEL)设为默认,并更新配置 -
测试核心服务:逐个检查 SSH、数据库、Web 服务是否正常监听端口;运行
systemctl list-units --state=failed查看是否有失败单元;对桌面用户,确认显示管理器(GDM/SDDM)和图形驱动是否加载成功


















