为 Fedora 22 创建分区 /biosboot

为 Fedora 22 创建分区 /biosboot

我已经安装了 fedora 22。我为此创建了一个分区 /biosboot。重新启动后,我发现 fedora 22 和其他两个 linux 发行版(ubuntu 和 linux mint),但 windows 7 消失了。我如何同时获得 windows 7 和 linux?

答案1

首先,BIOS 启动分区未安装,因此不称为“/biosboot”——前导斜杠通常表示已安装的分区或根 ( /) 文件系统中的目录。这可能看起来有些迂腐,但重点是要强调我假设您谈论的是真正的 BIOS 启动分区,而不是您已安装的某个随机分区/biosboot。如果您已经完成了后者,那么所有赌注都将失效,并且以下内容可能不适用......

BIOS 启动分区仅在以下情况下有意义:GUID 分区表 (GPT)磁盘,并且仅在以 BIOS/CSM/旧模式启动时有用。但是,如果您从 GPT 磁盘启动 Windows,则 Windows 必须以 EFI/UEFI 模式启动 - 这是 Windows 的限制。因此,您的问题意味着您已在 BIOS/CSM/旧模式下安装了 Fedora,但现有 Windows 安装处于 EFI/UEFI 模式。(您的 Mint 和 Ubuntu 安装可能也是在 EFI 模式下,但它们可以非常轻松地切换,因此在您安装 BIOS 模式 GRUB 后仍会以 BIOS 模式启动。)此分析中可能存在一个缺陷:您没有指定您的计算机有多少个磁盘。如果您有两个磁盘,您可能从 MBR 磁盘以 BIOS 模式启动 Windows,从 GPT 磁盘以 BIOS 模式启动 Fedora。如果是这种情况,则以下内容不适用;但如果您只有一个磁盘,或者所有磁盘都使用 GPT,请继续阅读...

首先要做的是禁用固件中的 BIOS/CSM/旧版支持。具体操作方法因计算机而异。在一些系统上,用户无法真正控制它,在这种情况下,您需要四处寻找如何强制计算机以 EFI/UEFI 模式启动的方法。了解计算机(或主板,如果是自建的)的品牌和型号可能会有所帮助。

禁用 BIOS/CSM/传统模式后,计算机应使用您之前使用过的任何引导加载程序进行引导。您很可能能够引导 Windows、Mint 和 Ubuntu,但不能引导 Fedora。您可以引导到任何控制 GRUB 的操作系统(可能是 Mint 或 Ubuntu),然后执行操作sudo update-grub以使其检测 Fedora。


编辑:根据 Boot Info Script 的输出,您似乎安装了 EFI 模式的 Windows 和 BIOS 模式的 Ubuntu、Mint 和 Fedora。没有证据表明 Linux 有 EFI 模式的引导加载程序,而您必须有 Linux 才能启动所有操作系统。以下是恢复方法:

  1. 在您的固件中禁用 BIOS/CSM/legacy 支持。首先,使用此功能会让您陷入问题,禁用此功能将有助于您控制将来的启动过程。下一步需要以 EFI 模式启动计算机,最可靠的方法是禁用 CSM。我无法提供有关如何执行此操作的详细说明,因为每台计算机的细节各不相同。这些选项出现在固件的设置实用程序中(大多数人错误地称之为“BIOS 设置实用程序”),因此您必须在那里仔细研究。您很可能手动启用了 CSM,因为大多数现代计算机出厂时都禁用了它。(但是,如果您的计算机早于 Windows 8,则可能已启用 CSM。)请注意,“启用 BIOS/CSM/旧版支持”有时被表述为“禁用 EFI/UEFI 启动”,尽管后一种表述很少见。
  2. 安装Linux 的 EFI 引导加载程序。有几种可用,但最容易安装的是以下两种:
    • 我的重新索引-- 您可以使用 USB 闪存驱动器或 CD-R 映像进行测试,可在rEFInd 下载页面。它应该会显示适用于 Windows 以及 Ubuntu 和 Mint 的选项,尽管一开始可能很难区分它们。此外,您的 Fedora 安装似乎将内核放在 LVM 中,因此您需要分离一个单独的/boot分区才能使其工作,或者至少将 Fedora 内核复制到 ESP 或其他可访问位置。(您可以稍后处理。)如果 rEFInd 可以从可移动媒体运行,请从 Ubuntu 或 Mint 安装其 Debian 软件包或 PPA,然后对其进行微调:/boot为 Fedora 创建一个分区,并将 Ubuntu 和 Mint 分区分别命名为“Ubuntu”和“LinuxMint”,以便 rEFInd 将显示正确的图标。
    • GRUB 和启动修复- 这引导修复该工具可以自动修复许多 GRUB 问题;但是,在你的情况下必须从 EFI 模式运行。此外,它是一个自动脚本,可能会也可能不会在复杂的四重启动配置中正确完成所有操作,并且除了在您的系统上设置它之外,没有其他方法可以知道它是否会做正确的事情,因此存在使情况变得更糟的风险。但是,如果它有效,一切都会立即结合在一起。

顺便说一句,我认为最好使用虚拟化(VirtualBox、QEMU、VMware 等),而不是尝试在“裸机”上启动如此多的操作系统。像您这样的多启动设置很复杂且难以维护,而虚拟化可让您将每个操作系统隔离在其自己的容器中,从而使管理变得更加简单。

相关内容