我有一台带有两个硬盘的电脑。当我购买它时,一个硬盘上有 Windows 10,另一个硬盘上有 Ubuntu。我用 Manjaro 替换了 Ubuntu,这完全没问题。当我启动时,我会看到一个启动菜单,我可以在其中选择 Manjaro 或 Windows。
今天我决定用 Artix 取代 Windows。我使用 Artix 基础 openrc 创建了一个可启动 USB。我从此驱动器启动并按照以下位置的说明进行操作https://wiki.artixlinux.org/Main/Installation。我没有收到任何错误,一切都很成功。然而,当我重新启动计算机时,它会启动到类似 GNU Grub 命令行的界面。经过一番搜索后,我发现当 grub 损坏/找不到操作系统时会出现此菜单。从这个菜单中,我可以启动到 Manjaro,但不能启动到 Artix - 事实上,除了从可启动 USB 启动之外,我仍然无法启动到 Artix。
奇怪的是,当我进入 PC 的 BIOS 并选择启动驱动器时,有两个选项 - Manjaro 和 Grub。 Grub 将我带到看似无用的 grub 命令行或 Manjaro。如果我选择 Manjaro,我的 PC 会像以前一样启动,并且 Manjaro 启动菜单中启动 Windows 的选项仍然存在(显然不再起作用)。
我该如何解决这个问题,以便在启动时可以在 Artix 和 Manjaro 之间进行选择?我已经浏览了我能找到的每一个关于 grub 的论坛,并且可能在这一点上输入了数百个命令 - 似乎没有什么实际做任何事情。另外,有没有关于 grub/双启动的综合指南?所有指南似乎都非常糟糕(想一想,“只需插入可启动 USB,它就可以工作™”)。
答案1
经过一番探索后我设法解决了问题
由于 Manjaro 已经有了一个启动分区,Artix 就不需要也有一个了。我重新格式化了驱动器,重新安装了没有启动分区的 Artix。然后我启动到 Manjaro,使用pacman -S grub os-prober efibootmgr
然后运行命令grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
并完成grub-mkconfig -o /boot/grub/grub.cfg
可能有更好的方法来做到这一点,但这完全有效