记录一下我从 Debian Buster 升级到Debian Bullseye 的过程

Debian 社区于2021年8月14号发布了 Debian 的第十一个大版本的稳定版,代号 Bullseye ,具体细节可查阅官方发布。(正好是七夕,怕不是对单身狗有什么恶意🐶)

冷知识:Debian 项目的名称来自于项目创始人 Ian 和他的妻子 Debra 两人名字的合写,这真的是妥妥的撒狗粮;另外,每个版本的代号都来自于皮克斯动画《玩具总动员》中的角色, 例如 Deiban10 的代号 Buster 是电影中小主人 Andy 养的狗,Debian11 的代号 Bullseye 是主角胡迪 Woody 和翠丝 Jessie 的坐骑玩具马。

那像我这种喜欢追新的 Arch 教徒,当然是果断冲啊,我目前有两台云服务器运行的是 Debian,我全都给升级到 Bullseye 了。有两种方法得到 Debian Bullseye ,一个是全新安装,但是国内各大镜像站都还没同步 Debian Bullseye 的安装镜像,而且不适合已经有服务在运行的服务器;还有种方法是像我一样,使用已有的 Debian Buster 升级。

确保已有的系统是 Debian Buster 的最新版本,若从较旧的版本如 Debian9 强行升级,很难保证不出什么问题;还有检查一下自己有没有使用第三方的软件源,比如我另外添加了 docker 的软件源, 也需要相应的修改,这个先按下不表;最好备份一下重要数据,防止更新出现问题(不过我是没有备份数据,直接就冲了,也没啥问题)。

Debian 默认的软件源配置文件存放在/etc/apt/sources.list,理论上把这个文件里的 buster 全部改成 bullseye,再apt update apt upgrade,就可以了,但是我发现 Buster 和 Bullseye 的 软件源结构有些不一样,这样做的话,更新的时候可能会出问题。


图片来自北外镜像站,可以看到 security 源结构是不太一样的,修改软件源的时候要注意,不要搞错了。

另外,我还使用了 docker 软件源,配置文件存放在/etc/apt/sources.list.d/docker.list,它的内容是这样的:


可以看出这里也是需要修改的,把 buster 也改成 bullseye(这里我已经改过了)。

接下来就是正式开始升级了,先apt update,等待几秒钟,如果一切都没问题且网络畅通的话,应该会没有任何报错并提示你有多少包可以升级。 接着执行apt full-upgrade,他就会开始从你所选择的镜像站下载软件包,时间长短取决于网速快慢,下载完成就会开始软件包的升级。

和常规的系统更新有些不同的是,软件包下载完成后,会弹出来一个更新日志,我相信你不会认真看的,按 Q 退出,就会正式开始升级了。

在升级过程中也会弹出一些提示,询问是否要重启一些服务,或者是否保留某些配置文件的修改,这些都按需选择吧,这部分我没截图。我比较推荐保留修改过的配置文件,一般直接回车就好。

经过一段时间后,升级过程结束,我推荐先执行apt autoremove清理一些已经不需要的包,如果这时你发现还有那么几个包没有升级,可以再运行apt dist-upgarde,一般就可以了。 这时,neofetch 一下,就可以发现现在的系统版本已经是 Debian Bullseye 了,但是内核还是旧的 4.19。

如果没有滚挂的话,重启重新进入系统,再次 neofetch 一下,就可以看到已经是使用新版本 5.10 内核了。

作为一个日常使用 Arch 的人来说,这么大幅度的更新,我心里是有些犯怵的,毕竟要是 Arch 系的话,绝对就滚挂了,但是没想到 Debian 这么稳,本来装的软件,运行的服务,都十分正常。

可能这就是 Debian 的魅力所在吧 : )