如何修复已删除内核的系统?

如何修复已删除内核的系统?

因为我想在硬盘上腾出更多可用空间,所以我删除了旧内核(不要问我为什么这么生气)。我还意外删除了活动内核(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

先感谢您!

编辑:您可以在这里找到 /var/log 中的一些日志文件:内核日志 启动日志

答案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 的建议进行操作,但如果您想保留应用程序,则应避免重新安装(因为正如您所见,那样会删除应用程序。)如果您想避免在缺少内核的情况下卸载启动:

  1. 启动到 LiveCD。

  2. 使用 nautilus 打开损坏的分区。

  3. 导航到 /home/myusernamehere。您的所有文件都在那里。

您可能想要保存的一些其他文件:

  • /etc/apt/sources.list,如果您有任何手动存储库。

完成后,将其粘贴到闪存驱动器上或通过电子邮件发送给自己。

应用程序是一个比较棘手的部分。我想出了一个有点迂回的解决方案,虽然需要一些时间(大部分时间都不需要你积极参与),但这应该可以恢复你的应用程序(无需设置/配置)

  1. 坚持使用 LiveCD。

  2. 导航到 /usr/lib。(加载可能需要一段时间。)

  3. 哇哦!文件夹数量好多。在 liveCD 中打开 gedit。

  4. 在 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 个内核)。

Ubuntu 20.04 安装后黑屏,无法启动

相关内容