运维救援:系统升级与回滚

在 Linux 世界中,“升级”既是享受最新特性的时刻,也是系统最脆弱的时刻。特别是对于滚动更新(Rolling Release)的发行版,掌握正确的升级姿势是防止“滚挂”的唯一手段。


1. 升级前的“救命”清单

🚫 绝对禁止

严禁在没有备份的情况下执行大版本升级!

  1. 执行快照: 运行 sudo timeshift --create
  2. 备份数据: 确保 /home 或关键业务数据已同步至云端或外部硬盘。
  3. 查看官方通告:
    • Arch: 检查首页新闻(Arch News)。
    • Debian/Ubuntu: 查看 Release Notes。

2. 安全升级流程

TAB分类
💡 点击标签可切换下方对比内容
视图分类:

Ubuntu / Debian

# 1. 刷新元数据
sudo apt update
# 2. 安全更新
sudo apt upgrade
# 3. 处理依赖变动的全面更新
sudo apt full-upgrade

Arch Linux

# 滚动更新
sudo pacman -Syu

Fedora

# 使用 DNF 插件进行大版本更新 (如 39 -> 40)
sudo dnf system-upgrade download --releasever=40
sudo dnf system-upgrade reboot

3. 当升级失败后:回滚实战

3.1 无法进入系统

  1. 引导至 Grub 菜单。
  2. 如果你在之前的章节配置了 Btrfs + Snapper,可以直接在 Grub 中选择上一份快照引导进入系统。
  3. 否则,插入 Live USB,运行 Timeshift 执行还原。

3.2 驱动失效(黑屏)

通常是 NVIDIA 驱动未随内核同步编译导致的。

解决方法
  1. 在 Grub 按 e 编辑内核参数,加入 nomodeset 启动。
  2. 进入系统后,重新运行 DKMS 或重装驱动:
    sudo dkms autoinstall

4. 生产环境的“蓝绿部署”思维

在管理关键业务服务器时,建议不要原地升级(In-place Upgrade)。

  • 做法: 启动一台新版本的服务器,将业务流量切过去,确认无误后再销毁旧服务器。

5. 结业练习

任务 1 检查新闻 访问你当前发行版的官方网站(如 archlinux.org),阅读最近的一条升级公告,判断它是否涉及你正在使用的硬件或软件。
练习 2 清理旧核 运行 sudo apt autoremove 或 dnf autoremove,观察它是否清理了旧版本的 Linux 内核以腾出 /boot 空间。
练习 3 快照验证 尝试手动删除一个不重要的系统配置文件,然后通过 Timeshift 还原,验证你的“后悔药”是否真的有效。
💡 Tip

“求稳”并不代表“不更新”。及时修复安全漏洞(Security Patches)才是系统安全的最大保障。

Navigation