我刚刚尝试安装名为 Teamviewer 的软件。它说存在某种未解决依赖关系的错误。然后我意识到我试图安装 32 位版本,但我需要安装 64 位版本。所以我尝试了一下,结果出现错误,提示 Ubuntu 需要进行部分升级。
我觉得这很奇怪,所以我只想放弃安装任何东西并退出。我退出了所有程序并重新启动,现在我无法回到 Ubuntu。在 GRUB 屏幕之后,我看到一个黑屏,没有登录选项。
如果我启动恢复系统,我会看到以下屏幕:
我启动了 12.04 的 Live CD 来看看是否有帮助,但似乎唯一的选择是完全重新安装 Ubuntu。
我能用任何方式修复它吗,或者我唯一的选择就是重新安装?
答案1
与..一起处理极其谨慎。我们鼓励您始终做好充足的备份,因为您距离重新安装整个系统只有一步之遥。此外,我不会对任何可能的灾难性后果承担责任。祝您好运,万事如意。
这对于解决你的问题来说不是一个好主意。
您可以尝试从相同架构的 LiveCD 进行 chrooting,并尝试修复损坏的软件包。
笔记:如果不是同一架构,chrooting 将会失败。例如,如果您的分区也是 64 位的,则只能使用 64 位 LiveCD。否则,chrooting 将会中途失败。您可以使用以下命令检查您的架构uname -m
。
运行sudo fdisk -l
并记下安装 Ubuntu 的分区。
创建一个目录/mnt
以便稍后挂载分区:
sudo mkdir /mnt/1
假定分区的文件系统类型为ext4
,则将分区挂载在/mnt/1
。
sudo mount -t ext4 /dev/sda5 /mnt/1
如果您输入了错误的文件系统类型,您将收到类似以下的错误:
$ sudo mount -t ext3 /dev/sda5 /mnt/1
mount: wrong fs type, bad option, bad superblock on /dev/sda10,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
如果您不确定文件系统,请在文件管理器中挂载分区,然后运行df -T
。记下文件系统类型,然后卸载并使用正确的文件系统类型挂载它:
sudo umount /dev/sda5
现在您已正确挂载它,请将其 chroot 到先前创建的目录/mnt
。
sudo chroot /mnt/1
如果你得到chroot: failed to run command /bin/bash no such file or directory
,尝试复制/bin
并/lib
/mnt/1
然后再次尝试 chroot。
sudo cp -r /bin /lib /mnt/1
现在您已 chroot 到系统中,请尝试通过 修复损坏的软件包apt-get update && apt-get upgrade
。如果周围有任何未解决的损坏或未满足的依赖关系,请尝试清理它。
希望您现在已经能够解决并删除任何可能先前阻碍了启动过程的损坏软件包。
此时出现任何其他特殊情况需要它自己的问题。