实际答案

实际答案

可能是在更新后,或者可能是在 Windows 启动过程中突然关闭后,启动菜单中突然缺少 Windows。

os-prober输出:

/dev/sdb1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
/dev/sdb3:Ubuntu 18.04.2 LTS (18.04):Ubuntu:linux

efibootmgr -v输出:

BootCurrent: 0003
Timeout: 0 seconds
BootOrder: 0001,0008,0000,0007,0009
Boot0000* Windows Boot Manager  HD(1,GPT,93828d50-bca4-01d4-a842-c149525eea00,0x800,0x145000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...3................
Boot0001* manjaro   HD(1,GPT,65c82838-e33c-4e92-9be0-c427de042756,0x800,0x145000)/File(\EFI\manjaro\grubx64.efi)
Boot0007* UEFI: WDC WD10SPZX-75Z10T1, Partition 1   HD(1,GPT,93828d50-bca4-01d4-a842-c149525eea00,0x800,0x145000)/File(EFI\boot\bootx64.efi)..BO
Boot0008* ubuntu    HD(1,GPT,93828d50-bca4-01d4-a842-c149525eea00,0x800,0x145000)/File(\EFI\ubuntu\shimx64.efi)
Boot0009* UEFI: Micron 1100 SATA 256GB, Partition 1 HD(1,GPT,65c82838-e33c-4e92-9be0-c427de042756,0x800,0x145000)/File(EFI\Microsoft\Boot\bootmgfw.efi)..BO

lsblk输出:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0   650M  0 part 
├─sda2   8:2    0   651G  0 part 
└─sda3   8:3    0 279.9G  0 part /run/media/user/lincom
sdb      8:16   0 238.5G  0 disk 
├─sdb1   8:17   0   650M  0 part /boot/efi
├─sdb2   8:18   0  70.2G  0 part /run/media/user/6A5E35815E35475B
├─sdb3   8:19   0  27.9G  0 part /run/media/user/43f98f19-cd98-403a-96bd-6bac85
├─sdb4   8:20   0    51G  0 part /
├─sdb5   8:21   0  33.3G  0 part /run/media/user/vms
└─sdb6   8:22   0  55.5G  0 part /home

我使用以下命令重新安装 grub:

sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck
sudo update-grub

但它仍然没有找到Windows(或Ubuntu)。

所有操作系统均以 UEFI 模式安装,并使用相同的 efi 分区进行引导。

~/# uname -r
5.4.101-1-MANJARO
~/$ grub-install --version
grub-install (GRUB) 2.04~19~manjaro

答案1

实际答案

扩展于@贾希德回应如果您最近更新了 grub,并且您的启动菜单或整个启动菜单消失了,您将需要编辑/etc/default/grub和添加/编辑以下一行或多行:

如果您的启动菜单未显示

GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=menu

如果缺少其他操作系统(适用于 Linux 或 Windows、同一磁盘或另一磁盘、HDD、SSD 或 NVMe)。

GRUB_DISABLE_OS_PROBER=false

现在很重要确保编辑此文件后运行sudo update-grub以使更改生效。/etc/default/grub单独编辑没有任何作用。

附加信息

问题中列出了您可能会发现有用的其他一些命令,lsblk将列出磁盘和分区,fdisk -l将为您提供更多信息(例如 Windows 位于哪个磁盘上),sudo os-prober将列出可以找到的所有其他操作系统(Linux 和 Windows,但不包括您当前正在运行的那个)。

如果上述方法都没有帮助,您可能感兴趣的文件和文件夹如下:

/boot/grub/grub.cfg
/etc/grub.d/
/etc/default/grub

Grub 文档(供参考)的“编写您自己的配置文件”部分列出了您可以在/etc/default/grub文件中添加的选项。

答案2

由于某种原因,新版本grub不再默认探测其他操作系统。您需要添加:

GRUB_DISABLE_OS_PROBER=false

/etc/default/grub

编辑:

忘了提及,您需要 update-grub 才能应用此更改。

相关内容