错误:您需要先在 Grub 中加载内核

错误:您需要先在 Grub 中加载内核

我在 上安装了 Lubuntu 11.10 /dev/sda3,在 上安装了 Xubuntu 11.10 /dev/sda5。前段时间,在使用 Lubuntu 时,我在创建 Live USB 时犯了一个错误:我错误地将 Live USB 引导加载程序安装到了 中/dev/sda3。这当时并没有导致任何问题。

今天,我更新了内核。我不得不重启 Lubuntu。在 Grub 中,Lubuntu 突然不再出现,而我在 Xubuntu 中自动启动。我尝试运行update-grub并尝试使用grub-customizer让 Lubuntu 回到 Grub 中,但这没有用。我运行了os-prober,但它没有显示 Lubuntu。

/etc/grub.d/然后,我尝试在on /dev/sda5called中添加一个新条目12_lubuntu。它包含以下内容:

#!/bin/sh -e
echo "Lubuntu"
cat << EOF
menuentry "Lubuntu" {
set root=(hd0,3)
linux /boot/vmlinuz
initrd /boot/initrd.img
}
EOF

完成后,我运行update-grub并使用grub-customizer,将 Grub 配置写入 MBR,即:/dev/sda

突然,Lubuntu 出现在 Grub 中。我尝试启动它,但在执行此操作时,出现了以下消息:

Error: File not found
Error: You need to load the kernel first

ls -allin的输出/dev/sda3如下:

gijs@Gijs-PC:/media/9c715f68-f083-46ab-9d55-6139556f31d4$ ls -all
totaal 112
drwxr-xr-x  23 root root  4096 2011-11-25 23:35 .
drwxr-xr-x   5 root root  4096 2011-11-26 10:55 ..
drwxr-xr-x   2 root root  4096 2011-11-22 22:17 bin
drwxr-xr-x   4 root root  4096 2011-11-25 23:36 boot
drwxr-xr-x   2 root root  4096 2011-10-15 21:58 cdrom
drwxr-xr-x   5 root root  4096 2011-10-12 18:08 dev
drwxr-xr-x 146 root root 12288 2011-11-25 23:37 etc
drwxr-xr-x   3 root root  4096 2011-10-15 21:59 home
lrwxrwxrwx   1 root root    37 2011-11-25 23:35 initrd.img -> /boot/initrd.img-3.0.0-14-generic-pae
lrwxrwxrwx   1 root root    33 2011-11-25 23:35 initrd.img.old -> /boot/initrd.img-3.0.0-14-generic
drwxr-xr-x  19 root root  4096 2011-11-22 22:17 lib
drwx------   2 root root 16384 2011-10-15 21:56 lost+found
drwxr-xr-x   5 root root  4096 2011-11-24 20:59 media
drwxr-xr-x   2 root root  4096 2011-10-09 09:29 mnt
drwxr-xr-x   4 root root  4096 2011-11-24 17:15 opt
drwxr-xr-x   2 root root  4096 2011-10-09 09:29 proc
drwx------  13 root root  4096 2011-11-22 17:19 root
drwxr-xr-x   5 root root  4096 2011-10-15 22:01 run
drwxr-xr-x   2 root root  4096 2011-11-22 22:17 sbin
drwxr-xr-x   2 root root  4096 2011-06-21 20:43 selinux
drwxr-xr-x   2 root root  4096 2011-10-12 18:06 srv
drwxr-xr-x   2 root root  4096 2011-07-14 07:11 sys
drwxrwxrwt   8 root root  4096 2011-11-25 23:37 tmp
drwxr-xr-x  10 root root  4096 2011-10-12 18:06 usr
drwxr-xr-x  13 root root  4096 2011-11-25 23:37 var
lrwxrwxrwx   1 root root    33 2011-11-25 23:35 vmlinuz -> boot/vmlinuz-3.0.0-14-generic-pae
lrwxrwxrwx   1 root root    29 2011-11-25 23:35 vmlinuz.old -> boot/vmlinuz-3.0.0-14-generic

我还找到了旧的30_os-prober_proxy/dev/sda3/etc/grub.d其中应该包含旧的引导内容。如下所示:

#!/bin/sh
#THIS IS A GRUB PROXY SCRIPT
'/etc/grub.d/proxifiedScripts/os-prober' | /etc/grub.d/bin/grubcfg_proxy "-*
-'Ubuntu, met Linux 3.0.0-12-generic-pae (on /dev/sda3)'
-'Ubuntu, met Linux 3.0.0-12-generic-pae (herstelmodus) (on /dev/sda3)'
+'Ubuntu, met Linux 3.0.0-12-generic (on /dev/sda3)' as 'Xubuntu'
-'Ubuntu, met Linux 3.0.0-12-generic (herstelmodus) (on /dev/sda3)'
+'Windows 7 (loader) (on /dev/sda2)' as 'Windows 7'
"

我怎样才能让 Grub 重新启动 Lubuntu?

答案1

启动修复

大多数 grub 启动问题可以通过使用启动修复- 作为这个社区维基解释说,您可以在 liveCD/USB 上或直接在正在运行的 ubuntu 安装中安装它,它将尝试查找所有 O/S 安装并修复整个 Grub MBR。

手动 Grub2 安装

如果启动修复无法发挥作用,那么传统的手动 grub2 安装方法如下:这个社区维基应该受到调查。

在该网页上搜索该部分复制 LiveCD 文件. 将示例/dev/sdxy语句替换为您安装 lubuntu 的分区 - 例如/dev/sda3

如果你不确定安装了哪个分区,那么你可以运行位于SourceForge

在结果中查找分区类型ext4ext3- 这些是常见的 Ubuntu 文件系统,除非您之前选择使用类似btrfsreiserfs等。

内核重新​​安装

如果问题是由于内核安装损坏,那么您可以研究从 Live CD 重新安装内核。这在这篇优秀的文章中有描述AskUbuntu 问答

通过正确安装内核,Grub 应该能够正确看到 Lubuntu 安装。

答案2

删除第二行(以 开头的行echo)。您可能还需要向内核添加根参数,如下所示:

linux /boot/vmlinuz root=/dev/sda3

之后update-grub再次运行。

答案3

您可以尝试使用 live cd 启动系统,然后使用这些命令 chroot 到 lubuntu 系统。

sudo mkdir /mnt/abc
sudo mount /dev/sda3 /mnt/abc
sudo mount ‐‐bind /dev /mnt/abc/dev
sudo mount ‐‐bind /proc /mnt/abc/proc
sudo mount ‐‐bind /sys /mnt/abc/sys
sudo chroot /mnt/abc
sudo grub-install /dev/sda

我认为这会解决您的问题,如果您不想在 MBR 中安装 lubuntu 加载程序,您可以在 /dev/sda3 中安装 grub,然后使用update-grubxubuntu。这样就可以了。

答案4

一周前,我又遇到了同样的问题,但现在我自己解决了。结果发现,这个问题与 LiveUSB 安装无关。我所要做的是grub-customizer从 Xubuntu 启动,单击FileSelect Partition单击Next,选择 Lubuntu 的分区,然后单击Mount the selected filesystem。我可以选择子挂载点,但这不是必需的。我点击了Apply

现在,我必须选中所有可用的复选框,以确保我可以从 Grub 启动 Lubuntu。然后我单击了FileSave之后,我单击了FileInstall to MBR

我重新启动后,可以再次启动 Lubuntu,问题解决了。

如果这不能解决您的问题,我建议您使用 fossfreedom 在下面的另一个答案中提到的工具。

相关内容