如果 Windows 引导加载程序位于 MBR 上,如何启动到 Linux 非主分区

如果 Windows 引导加载程序位于 MBR 上,如何启动到 Linux 非主分区

我已在传统模式/BIOS 模式下安装了 Windows 8.1(即:根本不是 UEFI)。Windows 8.1 安装在主分区(即:第一个)。我(打算)在此驱动器的第二个分区中安装 Linux。

假设我安装了 Linux(运行安装程序并重新启动)。问题:我是否可以启动到这个已安装的 Linux 分区如果是的话,怎么办?

注意:在这种情况下,我不会通过安装程序自动安装 GRUB,因此 MBR 仍将包含(如标题所示)Windows 引导加载程序。

我的问题的更一般形式是(也是我真正想知道的):如果操作系统远离 MBR(即,不通过菜单直接从 MBR 链接或通过传递链接),我该如何启动不同分区上的操作系统。

注意:遗憾的是,当我在 Google 上搜索相关信息并使用“Windows 8”一词时,每个安装指南都假设我使用的是 UEFI,这我不是,我处于 ​​BIOS/传统模式。我没有 EFI 分区,也不打算使用。

编辑:我不打算将 Windows 引导程序留在那里。我担心的是,如果 Windows 引导程序留在那里(因为我只安装了 Linux,而不是 grub+linux),我该如何启动 Linux?如果 MBR 没有指向辅助分区,我不知道如何在辅助分区上选择操作系统。

答案1

我不确定,但我认为 Windows 引导加载程序会在您安装新版本时获得条目(正在安装的版本负责检测其他 Windows 版本并将它们添加到它安装的引导加载程序中),并且它会忽略其他所有内容。因此,如果您在安装 Linux 时没有安装 GRUB,Windows 引导加载程序将直接忽略它。

您有两个选择:1)安装 GRUB 2)在 Windows 引导加载程序中添加 Linux 的条目。

我强烈推荐易BCD对于第二个选项,也许第一个选项,因为它有一个相当直观的界面,很棒的用户指南

我不擅长解释如何做事,但答案是这个超级用户帖子是我用来在 Windows 引导加载程序上获取 Linux 的方法。

答案2

不幸的是,如果您没有可以指向您想要引导的分区的引导加载程序,那么除了在那里获取一个或修改当前引导加载程序之外没有其他选择。

我不确定 Windows 引导加载程序有多灵活,但如果您正在安装 Linux,您不妨从安装环境中安装 GRUB。您可以使用它os-prober来确保该grub-mkconfig实用程序检测到您的 Windows 安装并配置条目。

你没有说你使用的是哪个发行版/安装程序,所以我无法链接到针对你的情况的具体文档。但是,大多数系统上的程序应该相当相似。这里是 ArchLinux 的 GRUB 页面的链接。为了显示其简单性,以下是针对 MBR 系统运行的命令列表:

pacman -S grub os-prober
grub-install --target=i386-pc /dev/sda --recheck
grub-mkconfig -o /boot/grub/grub.cfg # Here you should see log where it detects your Windows install and generates entry

相关内容