当前位置: 首页>>技术教程>>正文


在Ubuntu发行版升级过程中从关机中恢复

,

问题描述

我有一台在发行版升级期间意外关闭的计算机(Ubuntu 8.10-> 9.04)。现在它无法完成启动-各种X错误,然后进入登录屏幕,但不允许登录。

我已经对其进行了备份,并且/home数据在驱动器上仍然可以正常运行,因此不是紧急情况,但是完整的重建仍然是一个烦人且耗时的过程。有什么办法可以恢复吗?我有一张9.04 CD,我正在尝试尝试在顶部安装-这是个好主意吗?

如果失败,是否有任何好的方法来检查驱动器并生成已安装软件的列表,最好甚至包括来自/home外部(例如/etc)的设置?


如果我必须从头开始,有什么建议与负责意外关机的人员打交道? 🙂


编辑:非常感谢您的所有答案,我真的需要接受所有答案,因为我需要使用每个答案中的位。我可以使用以下方法完全修复安装:

sudo dpkg --configure -a
sudo apt-get update
sudo dpkg --configure -a
sudo dpkg --configure -a --abort-after=99999
sudo apt-get dist-upgrade
sudo apt-get -f install
sudo apt-get dist-upgrade

最佳方法

如果可以使用dpkg作为根目录,则可以运行dpkg --configure -a

但是,您可能会发现由于dist-upgrade破裂而爆炸,因此您可能需要:

dpkg --configure -a --abort-after=99999

次佳方法

尝试按CTRL-ALT-F1,看看是否出现命令提示符。查看是否可以登录,然后尝试运行sudo apt-get dist-upgrade。这也应该允许您完成升级。您可能会得到错误,因此您可能还需要尝试使用sudo dpkg –configure -a。


要获取已安装软件的列表,可以运行命令dpkg –get-selections。如果将它们的输出保存到文件中,则可以使用命令cat selections |。 sudo dpkg –set-selections,然后使用命令sudo apt-get dselect-upgrade实际安装所有软件包。

如果这样做,您可能应该将/etc和/home文件夹备份到另一台设备。

第三种方法

sudo apt-get update
sudo dpkg --configure -a
sudo apt-get update
sudo apt-get dist-upgrade

第一行刷新您正在下载的回购协议的当前级别

第二行重新配置处于”bad”状态的所有程序包

第三行位于第二行的过程中,以防存储库”moves”到新版本。

第四行应完成工作。

第四种方法

在升级期间断电后,Xubuntu无法启动的灾难性情况使我得以恢复。开机自检后约10秒钟,Xubuntu会因一系列错误而停止运行(尝试在grub中加载”recovery”选项也不起作用)。

因此,如果有人偶然发现此问题,我将从Ubuntu论坛中发布一些信息,这些信息可帮助我进入终端窗口,以便可以使用上面发布的命令Colin和Avery。

———-剪断———-剪断———-剪断———-剪断—— —-

假设您的系统在升级后就崩溃了,否则您的新内核将无法启动。 apt-get无法解决问题,因为您甚至无法进入命令行。内核只会喷出错误并在启动时挂起。值得庆幸的是,有了实时CD,您可以修复系统并使其启动并运行。实时CD有2个选项:Knoppix或Ubuntu实时CD。由于Knoppix通常具有更好的硬件检测功能,因此将作为示例。

  1. 首先,从http://www.knoppix.org/下载iso并将其刻录到磁盘。

  2. 将BIOS设置为从CD引导,弹出Knoppix磁盘,然后引导。

  3. 您的硬盘驱动器应在KDE桌面上显示为hda1或sdb2或其他名称,具体取决于您的系统。

  4. 单击将其安装,然后单击right-click,操作->更改为read-write模式。它会弹出一个对话框。单击是。

  5. 现在,打开一个在Knoppix菜单中找到的根终端(面板上K旁边的那个)。输入:chroot /mnt /hda1或硬盘驱动器在桌面上显示的图标。

现在,您可以使用硬盘驱动器上的所有命令,包括apt-get。如果您收到以下错误消息:“ /dev /null:权限被拒绝”,请执行以下操作:“ sudo rm /dev /null”,它应该消失。现在,使用apt-get升级您的内核,udev或其他任何使您的系统混乱的东西。

———-剪断———-剪断———-剪断———-剪断—— —-

它也很完美!我按照说明安装了硬盘驱动器,打开了一个终端窗口,输入“ sudo chroot /media /hda1”,最后可以访问硬盘了。这样,我便可以使用此线程前面发布的命令来重新启动升级过程。 🙂

奇怪的是,为什么Ubuntu Live /Installation CD没有内置”recovery console”来促进整个恢复过程。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9231.html,未经允许,请勿转载。