系统极客一直在努力
专注操作系统及软件使用技能

如何从 Debian 12 平滑升级到 Debian 13

Debian

历经 2 年多的精心打磨,广大用户心心念念的 Debian 13 终于正式发布了!新版本带来了海量全新特性和功能改进,想必有不少 Debian 12 用户早已跃跃欲试,想要第一时间升级到 Debian 13 稳定版本了 🤪。

接下来,我们就手把手教你如何从 Debian 12 平滑升级到 Debian 13,拆解每一个关键步骤,带你顺利完成这次大版本升级之旅。

01. 备份当前系统

先说重点:升级之前一定要备份!

  • 建议用你最熟悉的系统快照工具,对当前的 Bookworm 系统来一次完整备份。比如,可以使用 Rsnapshot 进行系统快照
  • 当然,你也可以直接使用tar命令,把系统里的「关键目录」打包成一个.tar.gz文件,比如这样:
sudo tar czf /bookworm.tar.gz \
     --exclude=/bookworm.tar.gz \
     --exclude=/dev \
     --exclude=/run \
     --exclude=/mnt \
     --exclude=/proc \
     --exclude=/sys \
     --exclude=/tmp \
     --exclude=/media \
     --exclude=/lost+found \
     /

02. 更新所有软件

升级之前,我们要确保 Debian 12 系统里的软件包都是最新:

1先更新所有软件包:

sudo apt update
sudo apt upgrade
sudo apt full-upgrade

2清理不再需要的残留软件包,并重启系统:

sudo apt --purge autoremove
sudo reboot

3看看当前 Debian 12 的最新「小版本」状态:

cat /etc/debian_version
更新 Debian 12 所有软件
更新 Debian 12 所有软件

03. 检查已安装的软件包

在长期使用 Debian 12 的过程中,我们可能安装了不少来自「非官方源」的软件,比如 Google Chrome、VirtualBox、Docker 等。这些外部源可能还没有适配 Trixie,直接升级有可能会出问题。

按照最佳实践,在升级之前最好先检查一下,系统里有哪些「包」不是来自 Debian 官方源:

1列出「已安装」但不来自官方源的软件包:

sudo apt list '?narrow(?installed, ?not(?origin(Debian)))'
检查当前 Debian 已安装的软件包
检查当前 Debian 已安装的软件包

2根据你的实际情况进行处理:

  • 不重要的软件,可以先卸载,等升级成功后再重新安装。
  • 我们的示例中的 Docker 来自外部源,但它通常会第一时间适配新系统,我们就选择保留。

3再检查一下有没有被hold住(禁止更新)的包:

sudo apt-mark showhold

4如果有,就解锁,让它们可以更新:

sudo apt-mark unhold <软件包名称>

5如果你使用了 Debian 的 backports 源,也不用担心。来自bookworm-backports的软件包版本一般都会低于 Trixie 中的正式版本,升级时会像普通软件包一样正常更新。

04. 修改 trixie 软件源

Debian 的软件源定义在/etc/apt/sources.list/etc/apt/sources.list.d/目录里。要从 Debian 12 升级到 Debian 13,就要先改成 Trixie 源。

1为了以防万一,建议先备份当前的源配置:

mkdir ~/apt
cp /etc/apt/sources.list ~/apt
cp -r /etc/apt/sources.list.d/ ~/apt

2把所有的bookworm改成trixie

sudo sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
sudo sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/*

3修改完后,/etc/apt/sources.list大概长这样:

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ trixie main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ trixie-updates main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ trixie-backports main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ trixie-security main contrib non-free non-free-firmware
修改 trixie 软件源
修改 trixie 软件源

05. 执行初步的最小化升级

1这个时候,你的 Debian 12 已经准备好迎接升级。先更新一次软件源列表,让系统重新识别新仓库:

sudo apt update

2按照 Debian 官方建议,升级过程最好分成 2 步:

  1. 第一步:最小化升级
  2. 第二步:完整升级

3执行最小化升级命令(只升级已安装的软件,不新增包):

sudo apt upgrade --without-new-pkgs
执行 Debian 13 最小化升级
执行 Debian 13 最小化升级

4升级时可能会弹出一些重要信息,阅读后按q退出,并继续升级。

阅读重要提示,并按 q 继续
阅读重要提示,并按 q 继续

5如果提示是否允许升级时自动重启服务,选择「Yes」后回车。

选择自动重启服务
选择自动重启服务

6如果问你「手动改过的配置文件要怎么处理」,不确定的话,就直接「回车」用默认选项,这通常是安全的。

选择配置文件处理方式
选择配置文件处理方式

06. 正式升级到 Debian 13

1最小化升级完成后,执行完整升级:

sudo apt full-upgrade

2这时,会出现一长串软件包列表,「回车」继续,期间根据提示做必要操作。

正式升级到 Debian 13
正式升级到 Debian 13

这一步会升级所有软件包,并根据需要安装新依赖、移除旧包。耗时可能会比较长,耐心等待就好 ⏰。

3升级完成后重启系统:

sudo reboot

07. 升级后的清理工作

恭喜,大功告成 👍!你的系统已经顺利从 Debian 12 升级到 Debian 13 了。现在,就登录系统,尽情享用焕然一新的 Debian 吧。

1最后,建议你清理一下不再需要的旧包:

sudo apt --purge autoremove

2清空本地 APT 缓存里的旧包文件:

sudo apt autoclean

总的来说,只要你遵循正确的步骤,从 Debian 12 升到 Debian 13 其实非常简单。升级完成后记得检查一下关键服务是否正常,应用是否运行如常。需要更多帮助的话,可以参考 Debian 官方升级文档

赞(0)
分享到

评论 抢沙发