从 24.04 LTS 升级到 26.04 LTS

1全盘备份
至少把 /etc、/home、数据库 dump 出来;服务器另留 IPMI / 控制台兜底。
2apt full-upgrade
把 24.04 现有包升到最新,确保升级器在干净基线上运行。
3do-release-upgrade
触发跨版本升级;中途按 Y 接受默认配置,全程不要断电。
Note
26.04.1 已于 2026 年 8 月 27 日 发布,这是 24.04 LTS 自动升级提示开启的节点。官方表示需要先发布 rust-coreutils 回归修复,自动提示预计在发布后约两周(2026 年 9 月初)开启;在此期间可以用 sudo do-release-upgrade -d 立即升级。
Ubuntu 支持 LTS 到 LTS 的直接升级。本文详细介绍从 Ubuntu 24.04 LTS (Noble Numbat) 升级到 26.04 LTS 的完整流程。
升级前提条件
- 当前系统为 Ubuntu 24.04 LTS 且已安装所有更新
- 至少 5 GB 可用磁盘空间
- 稳定的网络连接
- 已完成数据备份
- 对于远程服务器,确保有带外管理(如 IPMI、云控制台)作为备用访问方式
Warning
版本升级是重大操作,存在升级失败或软件不兼容的风险。升级前务必完成完整的数据备份,对于服务器请确保有带外管理等备用访问方式。升级过程中不要中断电源或网络连接。
升级前准备
1. 确认当前版本
lsb_release -a
cat /etc/os-release2. 更新当前系统
sudo apt update
sudo apt upgrade -y
sudo apt dist-upgrade -y
sudo apt autoremove -y3. 确保 update-manager-core 已安装
sudo apt install update-manager-core -y4. 检查升级策略
cat /etc/update-manager/release-upgrades确认 Prompt 设置为 lts:
[DEFAULT]
Prompt=lts如果值不是 lts,修改它:
sudo sed -i 's/^Prompt=.*/Prompt=lts/' /etc/update-manager/release-upgrades5. 处理第三方源和 PPA
# 列出所有第三方源
grep -r "^deb " /etc/apt/sources.list.d/ 2>/dev/null
apt-cache policy | grep -v ubuntu.com
# 建议升级前禁用所有 PPA
sudo add-apt-repository --remove ppa:example/ppa
# 或手动注释掉第三方源升级工具会自动禁用第三方源,但提前处理可以减少潜在问题。
6. 记录当前系统状态
# 记录已安装的包
dpkg --get-selections > ~/packages-before-upgrade.txt
# 记录运行中的服务
systemctl list-units --type=service --state=running > ~/services-before-upgrade.txt
# 记录网络配置
ip addr > ~/network-before-upgrade.txt
cat /etc/netplan/*.yaml > ~/netplan-before-upgrade.txt 2>/dev/null
# 记录内核版本
uname -r > ~/kernel-before-upgrade.txt执行升级
桌面系统
# 图形界面升级
sudo do-release-upgrade -f DistUpgradeViewGtk3或等待系统自动提示升级通知。
服务器 / 命令行
# 通过 SSH 执行升级
sudo do-release-upgrade如果 26.04 刚发布不久,可能需要加
-d参数:sudo do-release-upgrade -d
升级过程中的交互
升级过程中会出现几个需要确认的提示:
- 开始升级确认 - 确认继续升级
- SSH 端口 - 升级工具会在 1022 端口开启备用 SSH 服务,以防 22 端口中断
- 配置文件冲突 - 当配置文件被修改过时,需要选择保留本地版本还是使用新版本
- 关键文件(如 SSH 配置)建议保留本地版本
- 不确定的选择保留本地版本,升级后再手动合并
- 移除过时软件包 - 选择是否删除不再需要的包
- 重启确认 - 升级完成后重启系统
SSH 升级的特别注意事项
# 升级工具会提示在 1022 端口运行备用 SSH
# 如果主 SSH 连接断开,使用:
ssh -p 1022 user@server-ip
# 防火墙放行 1022 端口
sudo ufw allow 1022/tcp
# 推荐使用 screen 或 tmux 运行升级
sudo apt install screen -y
screen -S upgrade
sudo do-release-upgrade
# 如果断开连接,重新接入:
screen -r upgrade升级后验证
1. 确认版本
lsb_release -a
# 应显示 Ubuntu 26.04 LTS
cat /etc/os-release
uname -r2. 检查系统状态
# 检查是否有损坏的包
sudo dpkg --audit
sudo apt --fix-broken install
# 检查是否有保留未升级的包
apt list --upgradable
# 完成剩余更新
sudo apt update
sudo apt upgrade -y3. 检查服务状态
# 查看失败的服务
systemctl --failed
# 对比升级前的服务列表
systemctl list-units --type=service --state=running4. 清理
# 删除旧内核(保留当前和前一个版本)
sudo apt autoremove --purge -y
# 清理包缓存
sudo apt clean
# 重新启用需要的第三方源(更新为 26.04 版本)
# 注意:PPA 地址中的版本代号需要更新5. 恢复第三方源
# 升级后第三方源被禁用,文件名后缀变为 .distUpgrade
ls /etc/apt/sources.list.d/*.distUpgrade
# 检查 PPA 是否支持 26.04
# 如果支持,重新添加
sudo add-apt-repository ppa:example/ppa常见问题
升级过程中断
# 如果升级中断,尝试恢复
sudo dpkg --configure -a
sudo apt --fix-broken install
sudo do-release-upgrade“No new release found”
# 确认 Prompt 设置正确
cat /etc/update-manager/release-upgrades
# 尝试使用 -d 参数
sudo do-release-upgrade -d
# 检查网络连接
ping changelogs.ubuntu.com包依赖冲突
# 查看冲突详情
sudo apt -f install
sudo dpkg --audit
# 强制配置未完成的包
sudo dpkg --configure -a
# 查看日志
cat /var/log/dist-upgrade/main.log
cat /var/log/dist-upgrade/apt.log升级后无法启动
如果升级后系统无法启动:
- 在 GRUB 菜单中选择旧内核启动
- 进入 Recovery Mode
- 检查
/var/log/dist-upgrade/下的日志 - 修复损坏的包:
dpkg --configure -a && apt --fix-broken install
升级日志
所有升级日志保存在 /var/log/dist-upgrade/ 目录下:
ls -la /var/log/dist-upgrade/
# main.log - 主日志
# apt.log - APT 操作日志
# apt-term.log - APT 终端输出
# history.log - 升级历史
# lspci.txt - 硬件信息快照相关文章
Last updated on