在 uefi 机器上使用 grub2 引导 FreeBSD

在 uefi 机器上使用 grub2 引导 FreeBSD

我刚刚在 HP 450-a114 上安装了 FreeBSD 10.3。安装过程很顺利,没有出现任何问题。该机器装有 Windows 10、Linux Mint 和 LFS 发行版。过去(在较旧的仅支持 BIOS 的机器上),我所要做的就是向 grub 文件添加一个菜单项,运行 update-grub,然后 FreeBSD 就会使用 grub2 启动。我现在使用的机器是uefi,无法启动FreeBSD。 Windows 和 Linux 启动正常。一切都在一个驱动器上。这是我的分区:

/dev/sda1 -> Some uefi partition (label: /boot/efi)
/dev/sda2 -> Some Windows partition
/dev/sda3 -> Windows 10
/dev/sda7 -> My LFS distro
/dev/sda6 -> Linux Mint
/dev/sda8 -> Some efi partition installed by FreeBSD (label: EFI)
/dev/sda9 -> FreeBSD
/dev/sda10 -> FreeBSD swap
/dev/sda4 -> Windows recovery image
/dev/sda5 -> Windows recovery image.

如果有人需要任何类型的命令行输出,我很乐意发布。

答案1

/dev/sda1Windows、LFS 和 Mint 使用的 EFI 系统分区可能也是如此。您可以引导进入它们,因为这些操作系统的相关文件都在里面,/dev/sda1GRUB 也在里面。因此,GRUB 可以检测到它们。

然而,FreeBSD 安装已在 中创建了自己的 EFI 系统分区,这就是为什么不起作用的/dev/sda8原因,因为 中的 GRUB无法在 中找到相关的 EFI 文件。update-grub/dev/sda1/dev/sda1

/dev/sda8您可以尝试将FreeBSD 创建的相关 EFI 文件移至/dev/sda1,编辑它们以反映更改,然后update-grub再次尝试运行。

另一方面,为什么要在这么多分区上安装这么多操作系统呢?使用类似qemu或 之类的虚拟化解决方案VirtualBox可能是更好的选择。

相关内容