Linux/Windows 双启动

Linux/Windows 双启动

我有一个运行 Ubuntu 9 的系统,想在双启动配置中安装 Windows 7 RC。有没有办法让 Windows 与 grub 配合良好,或者我必须再次安装 Ubuntu 才能让其引导加载程序保持控制。

答案1

最好的做法可能是让 Windows 7 安装它自己的引导加载程序,因为它无法与 grub 很好地兼容,然后从 Ubuntu cd 启动并随后修复 grub。

答案2

看看这个文档。我以前做过这个,这并不难,只是需要一点耐心。

答案3

不幸的是,在安装 Linux 之后安装 Windows 会毁掉主引导记录 (MBR) 中启动 grub 的那段代码。不过,恢复起来其实并不难。下面是我过去的做法。

在安装 Windows 之前,我复制了主引导记录

dd if=/dev/sda of=original.mbr bs=512 count=1

(将 /dev/sda 替换为您驱动器的实际设备 ID)然后我将其复制到其他介质上,以便获得一份副本。完成后,进行 Windows 安装并确保一切正常。完成后,我使用 LiveCD 重新引导到 Linux(以前我会使用引导软盘,但现在我甚至没有带软盘驱动器的计算机 :-) )。引导到 Linux 后,我使用以下命令恢复原始 MBR

dd if=original.mbr of=/dev/sda bs=512 count=1

(再次使用原始 .mbr 文件的实际路径)。此时您可以重新启动或不重新启动。这将恢复您的 Linux 操作系统,但您将无法启动 Windows,直到将其添加到 grub.conf(或 menu.txt,具体取决于您的操作系统)。在我的系统上,我刚刚添加了以下几行:

title Windows XP Pro
        rootnoverify (hd0,1)
        chainloader +1

您需要将 (hd0,1) 替换为安装 Windows 的分区的相应 ID(在我的情况下是第一个硬盘上的第二个分区)。如果您仍在使用 LiveCD 操作系统,请确保编辑硬盘上的 grub.conf,而不是 LiveCD 中正在运行的 grub.conf :-)。完成更改后,您应该能够重新启动并通过 grub 访问两个操作系统。

答案4

是的,Windows 很可能会用 grub 擦除 MBR。您必须从启动 CD 加载并grub-install随后运行。

但是如果您经常尝试安装 Windows,则可以将 grub 安装到 Linux 分区,而不是 MBR。然后,只需active使用您喜欢的任何磁盘实用程序在 Linux 分区上设置位,Windows MBR 代码就会加载 grub,而 grub 可以加载其他任何内容。如果您有特殊的 MBR(如 ThinkPad),它也非常有用。

相关内容