因为我想在硬盘上腾出更多可用空间,所以我删除了旧内核(不要问我为什么这么生气)。我还意外删除了活动内核(Ubuntu 12.04 上的 3.2.0-27)。
首先我无法启动。我通过实时系统安装了内核 3.2.0-23 和 3.2.0-27(参见这里)。
现在,当我启动系统时,我只得到以下几行:
mountall: Event failed
fsck from util-linux 2.20.1
/dev/sda1: clean, 832254/40099840 files, 21092083/160394239 blocks
* Stopping Flush boot log to disk
* Stopping Enabling additional executable binary formats
* Starting bluetooth daemon
其他电脑规格:
- 英特尔 i5 2500K 4x 3.3 GHz
- 8 GB 内存
- /dev/sda1 是 Ubuntu,大约 1400GB
- 索泰 Nvidia GTX 560
- 华擎 Z68 Pro3
先感谢您!
答案1
从 livecd 启动,挂载硬盘,然后重新安装内核。例如:
sudo -s
mount /dev/sda1 /mnt
mount --bind /sys /mnt/sys
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
chroot /mnt
apt-get install linux-image-3.2.0-27-generic-pae
答案2
一种选择是手动恢复:
文件是最简单的部分。您可以按照 Ramchandra 的建议进行操作,但如果您想保留应用程序,则应避免重新安装(因为正如您所见,那样会删除应用程序。)如果您想避免在缺少内核的情况下卸载启动:
启动到 LiveCD。
使用 nautilus 打开损坏的分区。
导航到 /home/myusernamehere。您的所有文件都在那里。
您可能想要保存的一些其他文件:
- /etc/apt/sources.list,如果您有任何手动存储库。
完成后,将其粘贴到闪存驱动器上或通过电子邮件发送给自己。
应用程序是一个比较棘手的部分。我想出了一个有点迂回的解决方案,虽然需要一些时间(大部分时间都不需要你积极参与),但这应该可以恢复你的应用程序(无需设置/配置)
坚持使用 LiveCD。
导航到 /usr/lib。(加载可能需要一段时间。)
哇哦!文件夹数量好多。在 liveCD 中打开 gedit。
在 gedit 中输入:
#!/bin/sh
sudo apt-get install folder1 folder2 folder3
...其中 folder1 folder2 folder3 是文件夹的名称。
这些是您在 ubuntu 上安装的所有程序(我认为)。其中一些(约 50%,可能更多)是系统自带的,因此不是 必要的,但最安全的做法是把所有东西都放上去。
查找应用程序的另一个地方是 /etc 和 /etc/alternatives。(如果我遗漏了任何地方,请告诉我,互联网!)
将文件保存为 .sh 并通过电子邮件发送或通过闪存驱动器发送。
现在,当您第一次启动计算机时(完全重新安装后),您可以运行此脚本来 sudo apt-get 您之前拥有的所有程序。它们将像新的一样好!
答案3
您尝试过恢复选项吗?您可以在现有的 Ubuntu 安装上安装 Ubuntu - 所有文件都将保留。但是如果您修改系统文件,这些更改将被清除。
为此,在安装程序中选择高级分区并使用您的 ubuntu 安装分区作为 / 。
但我还没有测试过。
答案4
我只是想法我删除了内核。相反,我不知怎么地把它从内核队列中的第一个内核中取出,这样系统就会尝试使用另一个不需要的内核进行启动。所需的内核没有被删除。我通过从高级开始菜单中选择正确的内核解决了这个问题。要么你在uname -r
测试之前运行过内核,要么你可以逐个测试内核列表(我有大约 10 个内核)。