Ubuntu 为何试图自毁?

Ubuntu 为何试图自毁?

几个月来,我一直愉快地使用 Ubuntu(几乎完全更新,最新的 AMD 驱动程序和所有东西)。大约一周前,我开始尝试安装一些从 Humble Bundle 购买的游戏,这些游戏是我在家里和其他电脑上下载的(我的网络很差,所以用 Torrent 比较容易),其中一些是.deb文件。

当我尝试安装这些软件包时,有些软件包会尝试安装然后返回,就像什么都没发生一样(可能是因为内部错误),或者要求我找不到依赖项。由于这些问题,我尝试使用终端(使用sudo dpkg -i <package name>)安装相同的软件包,但过了一会儿,菜单栏上出现了一个红色气球图标,其中包含存储库的文件出现错误(不记得确切的错误,抱歉。但我认为是它无效并且无法写入)。

我把它留到以后再修复,但过了一会儿,软件中心开始给出损坏的软件包错误并要求修复它,所以我打开终端并执行了操作apt-get install -f,就像我以前遇到这种情况时所做的那样。它要求我下载 888 KB 的软件包,我同意了,但不久之后,它开始自动删除系统上的所有内容。它卸载了界面、网络驱动程序、许多程序等等。

当我注意到它时,我迅速关闭了它,但为时已晚。网络连接菜单不见了(驱动程序可能也消失了),所以我无法使用互联网。看到我自己无能为力,我重新启动以查看它是否是暂时的,但现在系统启动时没有图形界面(它只显示tty)。

我有 3G 网络(慢得要命),我不知道如何仅使用终端连接它,因此修复起来要困难得多。那么,是否可以在不重新安装的情况下修复它(请不要让我用这种糟糕的连接重新安装它)?如果需要的话,我这里有 Live USB。

哦,我忘了提供重要信息。我使用的是 Ubuntu 12.10 AMDx64,安装在 101GB ext4 分区上。只有 58MB(大约)的更新等待完成(因此大部分都已更新)。

答案1

可能您安装了一些 deb,它们与您提到的某些应用程序可能需要的某些包相冲突,因此它们被删除了。

如果您使用的是 12.04,不久前我看到一个可能与您遇到的问题相关的错误(如果我没记错的话,当被要求安装 32 位库时,apt-get 删除了一些软件包)。

无论哪种方式您都应该能够恢复,但您需要互联网连接,并且可能需要下载一些软件包。

要连接您的 3G 设备,请查看有帮助。您可能还需要编辑/etc/resolv.conf您的 DNS 信息。此外,还有一个小工具叫做sakis3g这可能会对你有帮助。

连接到互联网后,尝试

sudo apt-get install ubuntu-desktop

这应该会安装默认 Ubuntu 安装中的所有内容。请注意,您可能需要卸载导致冲突的任何内容。

如果它不起作用,您可以使用它dpkg --get-selections来获取已安装/删除的软件包的列表,然后从那里手动安装它们(即逐个安装)。


提示:下次您需要检查apt-get将执行的操作时,--dry-run在命令中添加:它只会模拟执行,而不会修改系统。例如:

$ sudo apt-get remove tasksel --dry-run
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  tasksel tasksel-data
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
Remv tasksel [2.88ubuntu9] [tasksel-data:amd64 ]   <-- tasksel would be removed.
Remv tasksel-data [2.88ubuntu9]                    <-- tasksel-data would be removed.

相关内容