Grub 对我来说已经完全疯了。我的四启动系统一直运行良好,直到我将 Ubuntu 升级到 12.04。由于 Ubuntu 覆盖了 Grub 的内容,我不得不用我的 Mac OS X 和 FreeBSD 条目来修复它。此后,尝试启动 Mac OS X 时出现错误“无法打开文件”,而 FreeBSD 出现错误“没有这样的分区”。Windows 和 Ubuntu 运行良好。
所以我尝试再次修复,因为我认为安装过程中一定出了问题。然后只有 Ubuntu 可以启动。尝试启动 Windows 会给我错误“未指定参数”。
我再次尝试修复 Grub,因为每次似乎得到的结果都不一样。这一次,Ubuntu 不再出现在 Grub 菜单中,其他操作系统的错误也一样。
于是我启动了 Ubuntu 12.04 live CD,并使用推荐的设置运行了 Boot-Repair。现在 Grub 完全被跳过,Windows 启动了。
我完全不知道发生了什么,也不知道为什么每次重新安装 Grub 时都会得到不同的结果。以下是我的分区设置方式:
- sda1-存储驱动器,
- sdb1-Windows,
- sdb2——Mac OS X,
- sdb3-FreeBSD,
- sdb4——扩展,
- sdb5-Ubuntu,
- sdb6-共享存储,
- sdb7-共享存储,
这是我的 grub.cfg 文件:grub配置文件
答案1
好的,听起来好像是你的 GRUB 安装搞乱了,然后 Boot Repair 用 Windows MBR 覆盖了它。
启动 Ubuntu 12.04 LiveCD 并从终端重新安装 Grub2。我假设您不是从带有 Grub Legacy 的旧版 Ubuntu 升级。无论哪种方式,您都需要 Grub2,它默认随 Ubuntu 一起提供。
这些是您需要运行的命令,将 /dev/sdAX 替换为您安装 Ubuntu 的分区(似乎是 /dev/sdb5 - 您可以使用“sudo fdisk -l”进行检查):
sudo su
mkdir /mnt/root
mount -t ext4 /dev/sdaX /mnt/root
mount -t proc none /mnt/root/proc
mount -o bind /dev /mnt/root/dev
mount -o bind /sys /mnt/root/sys
chroot /mnt/root /bin/bash
sudo grub-install /dev/sda
sudo update-grub
基本上,它从 Ubuntu 加载必要的文件,然后使用它们来查找所有操作系统并设置 grub.cfg 文件。
有关安装 Grub2 的更多信息这里。
答案2
这就是我将设置这个:
1:将 PLoP 安装到 MBR。(链接位于底部)
2:配置 PLoP 并添加 4 个可启动分区:
a:启动计算机
b:选择“设置”
c:选择“配置文件”
d:选择第一个条目
e:将名称更改为 Windows 或其他名称
f:将“在启动菜单中显示”设置为“是”。对您更改的所有条目执行此操作!
g:输入分区,当光标在“HDB1”上时,按键盘上的“B”键
h:按“ESC”退出,按“Y”和“Enter”
i:对接下来的 3 个条目执行此操作,以下是每个条目的分区列表:
答:HDB1,按“B”(Windows)
B:HDB2,按“B”(Mac OSX)
C:HDB3,按“B”(FreeBSD)
D:HDB4,按“B”,然后按“L”直到出现“L1”(Ubuntu)
j:您现在已完成 PLoP 的配置。如果您想配置高级设置,请参阅网站。
3:如果可以,启动 Ubuntu 和 FreeBSD,然后更新 grub。如果无法启动其中任何一个,请刻录 SG2D 或类似程序,并将 grub 安装到 /dev/sdb3 和 /dev/sdb5 上
4:现在您应该有一个可以正常工作的四启动系统。恭喜!如果没有,请评论您遇到问题的部分,我会尽力帮助您。
链接:PLoP:http://www.plop.at/ SG2D:http://www.supergrubdisk.org/super-grub2-disk/