Grub2 不与 Ubuntu 和 Windows 一起显示 Manjaro 条目

Grub2 不与 Ubuntu 和 Windows 一起显示 Manjaro 条目

我有一台配备 NVMe SSD ( /dev/sdb) 和 SATA ( /dev/sda) 的 PC。在 NVMe SSD 上只有 Windows 11,在 SATA 上我只有 Ubuntu,直到今天。今天早上我已经安装了 Manjaro Linux 并进行了自定义分区安装/dev/sda今天早上,我在Ubuntu 。问题是 GRUB 不向我显示 Manjaro 操作系统,而只向我显示 Ubuntu 和 Windows(一如既往)。加载 Manjaro 的唯一方法是连接 Live USB Image 并选择检测 EFI 引导加载程序入口。在这里我找到了这些:

检测 EFI 引导加载程序

选择第一个选项,它会正确启动 Manjaro。我在网上搜索了一下午,并尝试grub-install在 Manjaro 和 Ubuntu 上使用命令重新安装 GRUB,但没有效果。我也尝试过update.grub,但sudo grub-mkconfig -o /boot/grub/grub.cfg没有成功。最后一次尝试是efibootmgr报告:

BootCurrent: 0002
Timeout: 1 seconds
BootOrder: 0002,0000,0001,0003,0004
Boot0000* Windows Boot Manager
Boot0001* manjaro
Boot0002* ubuntu
Boot0003* UEFI OS
Boot0004* UEFI: KingstonDataTraveler 3.0PMAP

我尝试更改启动顺序和超时,但重新启动后它会像以前一样返回。

答案1

您可以将 Manjaro grub.cfg 导入到 Ubuntu grub 中。

将以下行添加到/etc/grub.d/40_custom

menuentry 'Manjaro grub menu' {
search.fs_uuid the_uuid_of_the_root_partition root hd1,gptX
set prefix=($root)'/grub'
configfile $prefix/grub.cfg
}

gptX是 manjaro 根分区,那么sudo update-grub

答案2

我发现了这个问题。这是因为我的 UEFI 固件在启动菜单中有另一个条目来选择启动加载程序顺序。因此,每次我重新启动计算机时,即使我曾经efibootmgr更改过它,固件也会将其重置为之前的配置顺序。

相关内容