假设我通过 ssh 进入我的计算机并运行
sudo apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)
并且,当 apt-get 正在运行并安装软件包时,坐在终端并登录到 gnome 的另一个人决定通过 GUI 关闭计算机。
在这种情况下可能发生的最坏情况是什么?是否有任何机制可以防止包裹处于“脏”状态?如果不是,如何防止?
在最坏的情况下,它可能会破坏您的系统,使其无法正常启动,但您始终可以启动到救援模式并修复它。
通过使用 Ubuntu 安装 CDROM 引导并在引导提示符下输入“rescue”来使用救援模式
挂载所有分区并执行 chroot 到挂载根分区的 /target。
系统启动到菜单后,选择显示“Drop to root shell prompt with networking”的项目。这使您能够从 Internet 更新软件包。
出现提示时,首先确保配置了所有当前安装的程序:
dpkg --configure -a
这可能需要很长时间,具体取决于在系统停止之前安装了多少程序。
apt-get 更新
apt-get 升级
同样,这最后一步可能需要很长时间才能完成。您应该注意保留的包列表(列在此命令输出的顶部);这些包必须特别要求。
通常,软件包被阻止是因为它们需要新软件或其他剧烈变化:Linux 内核总是被阻止。使用这样的命令来安装这些软件包:
apt-get install some-package some-other-package
您可能需要多次重复此操作,直到安装了所有软件包并且没有任何软件包被阻止。
然后,您应该重复更新和升级,以完全验证系统是否已尽可能更新:
apt-get 更新
apt-get 升级
这些最后的命令应该快速执行,因为一切都可能已经完成——但是,升级可能会影响需要再次升级的东西。不这样做可能没有关系,但为什么不这样做呢?
完成后,需要重新启动以确保不再使用旧软件,并且使用的只是新升级的软件。不要只是继续引导:重新启动。
之后还可以做一件事来清理——可能是在重新启动之后。在命令 shell 中,输入以下命令以删除不需要的软件:
apt-get 自动删除
| 归档时间: |
|
| 查看次数: |
7141 次 |
| 最近记录: |