每两年一次,Debian 不会有任何变化。在此期间,程序和功能版本保持不变。安全修复是向后移植的(获取新版本,然后切换到旧版本)。有时,包需要新功能的情况很少见。例如,可以升级驱动程序以添加对更多硬件的支持。但这种情况非常罕见。
保持不变也有一定的优势,比如让操作系统更可靠。您几乎从未遇到过错误。更新软件包后,一切几乎都不会损坏。没有新功能意味着不会发生不需要的行为。
但每隔两年,就会发布一个新版本的 Debian。而新版本往往会带来显着的改进和新功能。在“干净”的系统上,从一个主版本升级到下一个主版本是“顺利”的,让您感觉自己刚刚升级了一些不重要的软件包。
关于如何升级 Debian 的详细说明
- 升级前,清理sources.list!
- 准备 sources.list 以进行升级
- 升级 Debian
升级前,清理sources.list!
部分用户在尝试升级Debian时会遇到问题,如无法解决已删除的包、重要软件之间的冲突等,最后只能卸载。放旧并安装新版本。但是,在大多数情况下,这不是 Debian 的错误。这些用户遇到问题的原因通常是因为他们不小心做了一些破坏他们操作系统的事情。操作系统仍在工作的事实并不意味着包管理器没有问题。因此,我们始终建议您在继续之前从 'sources.list' 文件中删除对第三方软件的任何引用。
请打开此文件进行编辑:
sudo nano/etc/apt/source.list
删除任何对官方 Debian 档案之外的软件的引用。在这个文件中你只需要三行。
如果需要模板,复制下面的例子,根据需要修改。
保持 Debian 发行版的当前代号很重要!例如,如果现在是 2021 年并且您正在运行 Debian Buster,请将 stretch 替换为 buster 或适用于您的情况的任何内容。
deb http://deb.debian.org/debian stretch main deb http://deb.debian.org/debian stretch-updates main deb http://deb.debian.org/debian-security/stretch/updates main
另外,保持结尾字符串不变。在此示例中,该行以字符串 'main' 结尾。 但如果您当前的 'sources.list' 以 'main contrib non-free' 结尾 ,在每行末尾添加 'contrib non-free'。在这种情况下,最终结果如下所示:
deb http://deb.debian.org/debian stretch main contrib non-free deb http://deb.debian.org/debian stretch-updates main contrib非免费 deb http://deb.debian.org/debian-security/stretch/updates main contrib non-free
要保存文件,请按 Ctrl + X ,然后按 y,然后按 Enter。
更新包信息:
sudo apt update
升级包:
sudo apt upgrade
如果出现如下图的变化,看完后可以按q退出。
移除不必要的包:
sudo apt autoremove
准备sources.list进行升级
值得注意的是,你应该只从一个升级主版本到下一个。例如,您应该将 Debian 7 升级到 8 或 8 到 9,而不是从 7 升级到直接 9。
再次编辑您的软件源文件。
sudo nano/etc/apt/sources.list
将当前 Debian 发行版的代号替换为下一个版本的代号。您可以在 Debian 分发列表页面上找到代号(链接:https://www.debian.org/releases/)。
例如,要将 Debian 9 升级到 Debian 10,您将更改此:
deb http://deb.debian.org/debian stretch main contrib non-free deb http://deb.debian.org/debian stretch-updates main contrib非免费 deb http://deb.debian.org/debian-security stretch/updates main contrib non-free
。进入:
deb http://deb.debian.org/debian buster main contrib non-free deb http://deb.debian.org/debian buster-updates main contrib非免费 deb http://deb.debian.org/debian-security buster/updates main contrib non-free
保存文件然后刷新包信息:
sudo apt update
升级Debian
如果您在桌面上执行升级,请退出图形界面。更新过程将在某个时候重新启动图形堆栈,并导致您无法访问终端应用程序。
登录文本控制台。按 ALT + CTRL + F2 或 ALT + CTRL + F3 ,使用您的用户名和密码登录,然后在此屏幕上输入命令。
先执行安全升级。此步骤将升级所有包而不删除任何内容。
sudo apt upgrade
请注意是否有任何冲突导致软件包被删除。如果您在某些系统上使用此命令和下一个命令,则可以完全删除图形堆栈之类的东西。但是,这不会发生在“干净”系统上,因为您从未在 Debian 存档之外安装过任何东西。
一些包带有新的配置文件。系统会要求您保留旧配置或升级到新配置。
如果您修改了配置文件,您可能希望保留或升级然后添加自定义。但是,如果您从未接触过此文件,请选择升级新配置(输入 Y)。升级可能包含使软件工作所需的重要改进、安全修复或更改。这就是为什么您应该尽可能多地安装 Google 维护包的版本。
现在,执行完整升级。这将升级其余无法使用先前命令更新的软件包(原因是它们与旧软件包或系统上已经过时的程序冲突)。完全升级将删除一些旧包,为新包腾出空间。
sudo apt full-upgrade
执行此命令后,升级完成。您可以使用以下命令清理不必要的包:
sudo apt autoremove
最后重启电脑或服务器:
sudo systemctl reboot
大多数情况下,升级过程不会遇到任何问题。但是,如果您在包管理器中添加了第三方软件源或安装了第三方包(使用 dpkg-i something.deb 之类的命令),则可能会遇到冲突。在这种情况下,您必须手动解决它们,通过使用以下命令删除以前的违规包:
sudo apt autoremove badpackage
希望你成功。
0 评论