如何将Debian 9 Stretch升级到Debian 10 Buster

时间:2020-03-05 15:27:34  来源:igfitidea点击:

经过两年多的开发,新的Debian稳定版本Debian 10(代号为Buster)于2019年7月6日发布,并将获得5年的支持。

此版本附带许多新软件包和主要软件升级。
Debian 10 buster附带Linux 4.19 LTS内核,使用nftables框架作为默认iptables后端,支持UEFI安全启动,并默认启用了AppArmor。

在本教程中,我们将向我们展示如何将Debian 9 Stretch系统升级到Debian 10 Buster。

准备工作

升级操作必须以超级用户特权运行。
我们需要以root用户或者具有sudo特权的用户身份登录。

备份资料

首先,请确保在开始操作系统的重大升级之前先备份数据。
如果我们在虚拟机上运行Debian,最好进行完整的系统快照,以便我们可以轻松地恢复计算机,以防更新失败。

更新当前安装的软件包

在开始版本升级之前,建议将所有当前安装的软件包更新为最新版本。

标记为保留的软件包无法自动安装,升级或者删除。
这可能会在升级过程中引起问题。
要检查系统上是否有保留的软件包,请运行:

sudo apt-mark showhold

如果存在“处于保留状态”的软件包,则应使用“ sudo apt-mark unhold package_name”来解除对软件包的保留,或者确保这些软件包不会干扰升级过程。

刷新软件包索引并升级所有已安装的软件包:

sudo apt updatesudo apt upgrade

运行“ apt full-upgrade”,它将对安装的软件包进行主要版本升级,并可能删除一些不必要的软件包:

sudo apt full-upgrade

删除任何软件包不再需要的所有自动安装的依赖项:

sudo apt autoremove

将Debian 9 Stretch升级到Debian 10 Buster

第一步是重新配置APT的源列表文件。

为此,我们可以使用文本编辑器打开“ /etc/apt/sources.list”文件,然后将“ stretch”的每个实例替换为“ buster”,或者使用下面的“ sed”命令。

如果“ /etc/apt/sources.list.d”下还有其他源列表文件,则也必须更新这些源。

sudo nano /etc/apt/sources.list

/etc/apt/sources.list

deb http://deb.debian.org/debian buster main
deb http://deb.debian.org/debian buster-updates main
deb http://security.debian.org/debian-security buster/updates main

另外,我们可以使用以下“ sed”命令将所有源列表文件中的“ stretch”更新为“ buster”:

sudo sed -i 's/stretch/buster/g' /etc/apt/sources.listsudo sed -i 's/stretch/buster/g' /etc/apt/sources.list.d/*.list

完成后,更新软件包索引:

sudo apt update

如果存在与第三方存储库有关的任何错误或者警告消息,请尝试解决此问题或者禁用该存储库。

通过升级已安装的软件包来开始系统升级。
这只会升级不需要安装或者删除任何其他软件包的那些软件包:

sudo apt upgrade

系统将询问我们是否要在升级过程中自动重新启动服务。

Restart services during package upgrades without asking?

在升级过程中,系统可能还会询问我们其他问题,例如我们是要保留现有的配置文件还是要安装软件包维护者的版本。
如果我们未对文件进行任何自定义更改,则可以安全地键入“ Y”,否则要保持当前配置,请输入“ N”。

升级可能需要一些时间,具体取决于更新的数量和Internet速度。

接下来,执行“ apt full-upgrade”,将执行系统的完整升级,安装软件包的最新版本,并解决不同发行版中软件包之间的依赖关系更改。
这将升级所有未使用先前命令升级的软件包。

sudo apt full-upgrade

上面的命令可能会安装一些新软件包,并删除有冲突和过时的软件包。

完成后,请使用以下命令清除不必要的软件包:

sudo apt autoremove

最后,键入以下内容,重新引导计算机,以便激活新内核:

sudo systemctl reboot

确认升级

等待片刻,直到系统启动并登录。

登录后,我们会收到以下消息:

Linux stretch 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5 (2019-06-19) x86_64
...

我们也可以使用以下命令检查Debian版本:

lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

我们现在可以使用新的Debian 10 Buster。