从Ubuntu 20.04升级到22.04或24.04有哪些注意事项?

从 Ubuntu 20.04 LTS (Focal Fossa) 升级到 22.04 LTS (Jammy Jellyfish) 或 24.04 LTS (Noble Numbat) 是一个重要的系统维护任务。直接升级(In-place Upgrade)虽然方便,但存在一定风险。

以下是详细的注意事项、最佳实践和步骤建议:

⚠️ 核心原则:备份!备份!备份!

在进行任何重大系统升级之前,必须做好完整备份。

  1. 重要数据备份:将 /home 目录下的个人文件、配置文件(如 .bashrc, .config 等)备份到外部硬盘或云存储。
  2. 系统快照(如果可能):如果你使用 Btrfs 文件系统且有快照功能,或者使用了虚拟机/容器,请先创建快照。
  3. 记录当前环境:列出已安装的软件包列表 (dpkg --get-selections > packages.txt) 和自定义配置,以便在需要时恢复。

一、升级路径选择

✅ 推荐路径:20.04 → 22.04 → 24.04

  • Ubuntu 不支持跨版本直接升级(例如不能直接从 20.04 升到 24.04)。
  • 你必须先升级到 22.04,确认稳定后,再升级到 24.04。
  • 跳过版本的风险:可能导致依赖关系混乱、内核不兼容、驱动失效等问题。

❌ 不推荐:直接重装

  • 虽然干净,但耗时且容易丢失用户配置。除非你愿意重新安装所有软件并手动迁移配置,否则优先尝试原地升级。

二、升级前的准备工作

1. 确保当前系统完全更新

sudo apt update
sudo apt full-upgrade -y
sudo reboot

确保 20.04 是最新版本,避免已知 bug 影响升级过程。

2. 清理无用软件和缓存

sudo apt autoremove
sudo apt clean

减少磁盘占用,降低升级失败风险。

3. 检查第三方源(PPA)

  • 禁用非官方 PPA:许多 PPA 可能不兼容新版本,导致升级中断。
  • 方法:使用 ppa-purge 工具移除 PPA,或手动编辑 /etc/apt/sources.list.d/ 中的文件,注释掉相关行。
  • 注意:某些关键 PPA(如 Wine、Node.js)可能在 22.04/24.04 中有原生支持,无需额外 PPA。

4. 检查硬件兼容性

  • 显卡驱动:特别是 NVIDIA 专有驱动,建议在升级前卸载并使用开源 nouveau 驱动测试稳定性,或确保有最新闭源驱动可用。
  • Wi-Fi/蓝牙:某些旧网卡驱动在新内核中可能被移除或更改名称。

5. 电源保障

  • 如果是笔记本,请连接电源适配器。
  • 如果是服务器,确保 UPS 正常工作。

三、升级过程中的注意事项

1. 使用图形界面升级(Desktop 用户)

  • 打开“软件与更新” → “更新”标签页。
  • 点击“现在安装”,按提示操作。
  • 优点:自动处理大部分依赖问题。
  • 缺点:若遇到冲突,可能需要手动干预。

2. 使用命令行升级(Server/高级用户)

sudo do-release-upgrade
  • 务必阅读输出信息:每一步都会询问是否继续,仔细阅读每个提示。
  • 不要跳过任何警告:尤其是关于保留配置文件或删除包的警告。
  • 网络稳定性:确保网络连接稳定,避免中途断网导致包损坏。

3. 处理配置文件冲突

  • 升级过程中会提示你是否保留修改过的配置文件(.dpkg-dist, .dpkg-old 等)。
  • 一般建议:
    • 如果你不确定,选择“保留原样”(保持当前配置),升级后再比较差异。
    • 对于关键服务(如 Nginx, Apache, MySQL),建议备份原始配置文件后再决定。

四、升级后的验证与修复

1. 重启系统

sudo reboot

2. 检查系统状态

lsb_release -a   # 确认版本号
uname -r         # 确认内核版本
df -h            # 检查磁盘空间是否充足

3. 清理残留包

sudo apt autoremove
sudo apt autoclean

4. 检查第三方应用

  • 浏览器插件:Firefox/Chrome 插件通常会自动迁移,但需手动启用或更新。
  • 开发环境:Python、Node.js、Docker 等可能需要重新安装或配置环境变量。
  • NVIDIA 驱动:如果使用专有驱动,可能需要重新安装 DKMS 模块。

5. 检查日志错误

journalctl -xe | grep error
dmesg | tail -n 20

查看是否有驱动或服务启动失败的错误。


五、常见问题及解决方案

问题 可能原因 解决方案
升级卡住或报错 PPA 冲突 禁用所有非官方 PPA,重试升级
黑屏/无法进入桌面 显卡驱动问题 使用 nomodeset 内核参数启动,然后安装正确驱动
Wi-Fi 不可用 驱动缺失 安装 linux-firmware 或对应厂商驱动
部分软件无法启动 依赖库变化 重新编译或重新安装该软件
磁盘空间不足 旧内核未清理 运行 sudo apt autoremove 删除旧内核

六、特别建议:何时考虑全新安装?

如果出现以下情况,强烈建议备份数据后全新安装,而非原地升级:

  1. 系统已经非常陈旧,多年未升级。
  2. 安装了大量第三方软件,且来源复杂。
  3. 遇到难以解决的依赖冲突。
  4. 对系统稳定性要求极高(如生产服务器)。

总结:

  • 小步走:20.04 → 22.04 → 24.04。
  • 勤备份:数据安全第一。
  • 细观察:仔细处理每一个提示和警告。
  • 善清理:升级后及时清理无用包和旧内核。

遵循以上步骤,可以最大程度降低升级风险,顺利完成过渡。

未经允许不得转载:云知识CLOUD » 从Ubuntu 20.04升级到22.04或24.04有哪些注意事项?