中断apt-get dist-upgrade:会发生什么?


10

假设我将ssh插入计算机并运行

sudo apt-get dist-upgrade

并且,当apt-get运行并安装软件包时,坐在终端并登录gnome的另一个人决定通过GUI关闭计算机。

在这种情况下可能发生的最坏情况是什么?是否有任何机制可以防止软件包处于“脏”状态?如果没有,该如何预防?

Answers:


8

最坏的情况是,它可能会破坏系统,无法正常启动,但是您始终可以启动到应急模式并进行修复。

  1. 通过使用Ubuntu安装CDROM引导并在引导提示符下输入“ rescue”来使用救援模式

  2. 挂载所有分区,并对挂载根分区的/ target执行chroot。

  3. 系统引导到菜单后,选择显示“使用网络拖放到根shell提示符”的项目。这使您能够从Internet更新软件包。

  4. 出现提示时,请先确保已配置所有当前安装的程序:

    dpkg-配置-a

这可能需要很长时间,具体取决于系统停止之前已安装了多少个程序。

  1. 然后继续更新当前软件包列表:

apt-get更新

  1. 之后,升级系统上的软件:

apt-get升级

同样,最后一步可能需要很长时间才能完成。您应该注意保留的软件包列表(在此命令的输出顶部列出);这些软件包将必须特别要求。

通常,软件包会因为需要新软件或其他重大更改而被保留:Linux内核始终被保留。使用像这样的命令来安装这些软件包:

apt-get install一些软件包一些其他软件包

您可能必须重复执行一次以上,直到所有软件包都已安装且没有任何保留。

然后,您应该重复更新和升级,以完全验证系统是否已尽可能更新:

apt-get更新

apt-get升级

最后的命令应该很快执行,因为一切可能已完成–但是,升级并非不可能影响需要再次升级的内容。不这样做可能无关紧要,但是为什么不这样做呢?

完成后,需要重新启动以确保不再使用旧软件,而仅使用新升级的软件。不要只是继续启动:重新启动。

之后还可以做一件事清理-可能是在重新启动之后。在命令外壳上,输入以下命令以删除不需要的软件:

apt-get autoremove

资源


这可能是一个全新的问题,但是是否有解决此问题的简便方法?像一些还原命令?
giZm0 2012年

1
我已经更新我的答案,以包括
LnxSlck

2
我建议上面建议apt-get dist-upgrade到处运行apt-get upgrade。这样,您就无需手动安装“后退”软件包。
Mikko Rantalainen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.