如何在 Intel Mac 上重新安装或恢复 GRUB/MBR?

如何在 Intel Mac 上重新安装或恢复 GRUB/MBR?

我使用的是三重启动的 MacBook(OSX、Ubuntu、Windows)。Windows 开始出现问题,需要重新安装(这种情况经常发生)。重新安装 Windows 后,MBR 现在直接指向 Windows,而不是 GRUB。

GRUB 恢复可以在大多数 MRB 分区表上运行,但无法在该 GPT 分区表上运行:

$ sudo grub-install --root-directory /media/ubuntu /dev/sda

Ubiquity 知道如何正确执行此操作。我可以运行哪个命令来恢复 Intel Mac 上的 GRUB/MBR?

解决方案:虽然这并不简单,但我找到了解决方法。感谢 Colin Watson 和 Debian IntelMac[1] 文档,他们为我提供了部分解决方案。

这是我所做的:

1)从 LiveCD 启动

2)前往某个地方并使用 Ubuntu 挂载分区

3)在 nautilus 中按 CTRL-L 或使用 mount 命令找出该分区的挂载位置(例如:/media/123)

4)打开终端(应用程序>附件>终端)

5)运行以下命令:

$ for x in dev proc sys; 执行 sudo mount --bind /$x /media/123/$x; 完成

$ sudo chroot /media/123

# dhclient

# apt-get install grub-pc os-prober gptsync

# gptsync /dev/sda # Say YES

# grub-install --force /dev/sda #Tried sda4 (the ubuntu partition) but resulted w/blink _ at boot

# update-grub

# exit

$ sudo reboot

[1]http://wiki.debian.org/IntelMac/BootLoader#Upgrading

答案1

我根本不会对您的 windows/linux 分区使用 grub,而是使用 rEFit:

http://refit.sourceforge.net/

这意味着您的 Windows 分区在首次启动时就会出现在菜单中,紧邻 Mac OS X 和 Ubuntu。

要恢复当前分区,您应该将 grub 修复指向 MBR(而不是 GPT)并使用 /boot/grub 位置。我不知道您是否已将引导安装到 sda 或 sda1,因为在这种情况下磁盘引导记录似乎更合理。

sudo grub-install --root-directory /media/ubuntu /dev/sda1

答案2

我认为使用 refit 没有任何好处,但每个人都可以随心所欲。

要使用 SuperGrub2Disk 恢复 Grub2 启动到 ubuntu(可从此处获取:http://www.supergrubdisk.org/),然后简单运行sudo update-grub就完成了。

相关内容