本文由雨云提供云计算服务,雨云注册链接:雨云 - 老一代云服务提供商
前言
就在前天发布了debian13,但是截止到写文章时为止,雨云并没有更新debian13的预装,所以今天我就来教大家如何从debian12无损升级到13
升级教程
来到雨云控制台,复制ip,和密码,使用ssh连接

备份当前系统
先说重点:升级之前一定要备份!!!
- 你可以直接使用
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 \
/
更新所有软件
在升级之前,我们必须确保 Debian 12 系统里的软件包都是最新的
先更新所有软件包
sudo apt update
sudo apt upgrade
sudo apt full-upgrade

这里问我们是否继续,输入y即可

执行sudo apt full-upgrade后也会问我们是否继续,依旧输入y

清理不再需要的残留软件包,并重启系统
sudo apt --purge autoremove
sudo reboot

在输入sudo reboot之前,请确保你所有的工作均以保存,否则容易导致数据丢失
此过程会导致ssh断连约5分钟,请耐心等待

查看当前小版本号
cat /etc/debian_version
当显示版本是12.11的时候就可以进行下一步了

检查已安装的软件包
在长期使用 Debian 12 的过程中,我们可能安装了不少来自「非官方源」的软件,比如 Google Chrome、VirtualBox、Docker 等。这些外部源可能还没有适配 Trixie,直接升级有可能会出问题。
列出「已安装」但不来自官方源的软件包
sudo apt list '?narrow(?installed, ?not(?origin(Debian)))'

根据你的实际情况进行处理:
- 不重要的软件,可以先卸载,等升级成功后再重新安装。
- Docker 来自外部源,但它通常会第一时间适配新系统,就选择保留。
检查有没有被hold住(禁止更新)的包
sudo apt-mark showhold
如果有,就解锁,让它们可以更新:
sudo apt-mark unhold <软件包名称>
如果你使用了 Debian 的 backports 源,也不用担心。来自bookworm-backports的软件包版本一般都会低于 Trixie 中的正式版本,升级时会像普通软件包一样正常更新。
修改 trixie 软件源
Debian 的软件源定义在/etc/apt/sources.list和/etc/apt/sources.list.d/目录里。要从 Debian 12 升级到 Debian 13,就要先改成 Trixie 源。
为了以防万一,建议先备份当前的源配置
mkdir ~/apt
cp /etc/apt/sources.list ~/apt
cp -r /etc/apt/sources.list.d/ ~/apt
把所有的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/*
此过程终端不会有输出

执行初步的最小化升级
这个时候,你的 Debian 12 已经准备好了迎接升级。先更新一次软件源列表,让系统重新识别新仓库
sudo apt update
执行最小化升级命令(只升级已安装的软件,不新增包)
sudo apt upgrade --without-new-pkgs
这时候会询问你是否继续执行升级,输入y升级

升级时可能会弹出一些重要信息,阅读后按q退出,并继续升级。
如果提示是否允许升级时自动重启服务,选择「Yes」后回车(用方向键选择)
如果问你「手动改过的配置文件要怎么处理」,不确定的话,就直接「回车」用默认选项,这通常是安全的。
正式升级到 Debian 13
最小化升级完成后,执行完整升级
sudo apt full-upgrade
输入y继续

这一步会升级所有软件包,并根据需要安装新依赖、移除旧包。耗时可能会比较长,耐心等待就好 ⏰。
升级完成后重启系统(可到控制台重启)
sudo reboot
重启完成后再次输入
cat /etc/debian_version
可以看到已经更新到debain13了

升级后的清理工作
恭喜,大功告成 👍!你的系统已经顺利从 Debian 12 升级到 Debian 13 了。现在,就登录系统,尽情享用焕然一新的 Debian 吧。
最后,建议你清理一下不再需要的旧包:
sudo apt --purge autoremove
清空本地 APT 缓存里的旧包文件:
sudo apt autoclean
常见问题及解决办法
未满足依赖关系
当出现E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).的时候,说明有未满足的依赖关系
可以使用sudo apt --fix-broken install来修复

2278

被折叠的 条评论
为什么被折叠?



