我在 UEFI/GPT 的 SSD 上安装了 Linux Manjaro 和 Windows 10 双启动。几天前,我能够从 GRUB 启动菜单正常加载 Windows,但现在 Windows 无法识别。只有在 BIOS 设置中启用安全启动或禁用 GRUB 引导加载程序,我才能在 Windows 中启动。这是我的终端的输出。
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 77.9M 1 loop /var/lib/snapd/snap/p3x-onenote/110
loop1 7:1 0 290.6M 1 loop /var/lib/snapd/snap/kde-frameworks-5-qt-5-14-core18/4
loop2 7:2 0 67.7M 1 loop /var/lib/snapd/snap/todoist/4
loop3 7:3 0 295.3M 1 loop /var/lib/snapd/snap/vlc/2103
loop4 7:4 0 23.5M 1 loop /var/lib/snapd/snap/latexml/14
loop5 7:5 0 55.5M 1 loop /var/lib/snapd/snap/core18/1988
loop6 7:6 0 63.1M 1 loop /var/lib/snapd/snap/todoist/2
loop7 7:7 0 337.7M 1 loop /var/lib/snapd/snap/wine-platform-runtime/216
loop8 7:8 0 64.4M 1 loop /var/lib/snapd/snap/gtk-common-themes/1513
loop9 7:9 0 130M 1 loop /var/lib/snapd/snap/skype/162
loop10 7:10 0 74.8M 1 loop /var/lib/snapd/snap/p3x-onenote/108
loop11 7:11 0 162.9M 1 loop /var/lib/snapd/snap/gnome-3-28-1804/145
loop12 7:12 0 55.3M 1 loop /var/lib/snapd/snap/teams-for-linux/105
loop13 7:13 0 290.4M 1 loop /var/lib/snapd/snap/vlc/1700
loop14 7:14 0 64.8M 1 loop /var/lib/snapd/snap/gtk-common-themes/1514
loop15 7:15 0 55.4M 1 loop /var/lib/snapd/snap/teams-for-linux/150
loop16 7:16 0 99.2M 1 loop /var/lib/snapd/snap/core/10859
loop17 7:17 0 99.5M 1 loop /var/lib/snapd/snap/wine-platform-3-stable/11
loop18 7:18 0 74M 1 loop /var/lib/snapd/snap/wine-platform-3-stable/10
loop19 7:19 0 173M 1 loop /var/lib/snapd/snap/spotify/43
loop20 7:20 0 337.4M 1 loop /var/lib/snapd/snap/wine-platform-runtime/212
loop21 7:21 0 98.4M 1 loop /var/lib/snapd/snap/core/10823
loop22 7:22 0 55.4M 1 loop /var/lib/snapd/snap/core18/1944
loop23 7:23 0 134.4M 1 loop /var/lib/snapd/snap/skype/164
loop24 7:24 0 123.8M 1 loop /var/lib/snapd/snap/tusk/29
nvme0n1 259:0 0 238.5G 0 disk
├─nvme0n1p1 259:1 0 100M 0 part
├─nvme0n1p2 259:2 0 16M 0 part
├─nvme0n1p3 259:3 0 120G 0 part /run/media/luca/Windows
├─nvme0n1p4 259:4 0 100G 0 part /
├─nvme0n1p5 259:5 0 512M 0 part
├─nvme0n1p6 259:6 0 14G 0 part
├─nvme0n1p7 259:7 0 1G 0 part
├─nvme0n1p8 259:8 0 99M 0 part /boot/efi
└─nvme0n1p9 259:9 0 2.8G 0 part [SWAP]
sudo parted -l
Model: SAMSUNG MZVLB256HAHQ-00000 (nvme)
Disk /dev/nvme0n1: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 106MB 105MB fat32 EFI system partition boot, esp
2 106MB 123MB 16.8MB Microsoft reserved partition msftres
3 123MB 129GB 129GB ntfs Basic data partition msftdata
4 129GB 236GB 107GB ext4
8 236GB 236GB 104MB fat32 msftdata
9 236GB 239GB 2967MB linux-swap(v1) swap
5 239GB 240GB 537MB fat32 Basic data partition hidden, diag
6 240GB 255GB 15.0GB ntfs Basic data partition hidden, diag
7 255GB 256GB 1074MB ntfs Basic data partition hidden, diag
sudo efibootmgr -v
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0001,0002,2001,2002,2003
Boot0001* Manjaro HD(8,GPT,3037d983-6ed7-2c4a-9103-931adcf7f7c2,0x1b83a800,0x31800)/File(\EFI\Manjaro\grubx64.efi)
Boot0002* Windows Boot Manager HD(1,GPT,88ecf77d-e95d-4c1a-a16f-c05dfbac15d7,0x800,0x32000)/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.}…6…
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC
sudo update-grub
Generating grub configuration file …
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-5.10-x86_64
Found initrd image: /boot/amd-ucode.img /boot/initramfs-5.10-x86_64.img
Found initrd fallback image: /boot/initramfs-5.10-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.4-x86_64
Found initrd image: /boot/amd-ucode.img /boot/initramfs-5.4-x86_64.img
Found initrd fallback image: /boot/initramfs-5.4-x86_64-fallback.img
Adding boot menu entry for UEFI Firmware Settings …
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
done
另外,通过 os-prober 检查我得到:
sudo os-prober
/dev/nvme0n1p1@/efi/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
还尝试修改 40_custom 上的设置,让 GRUB 创建到 Windows 的链接,我可以在菜单中看到 Windows 徽标,但尝试启动时它返回“失败。路径无效”
cat /etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
menuentry “Windows 10” --class windows --class os {
insmod ntfs
insmod chain
insmod search_fs_uuid
search --no-floppy --set=root --fs-uuid 8EBA9260BA92451D
chainloader +1
}
答案1
已解决在 Manjaro 论坛上。
- 添加
GRUB_DISABLE_OS_PROBER=false
到/etc/default/grub
,然后 - 使用命令重新安装 grub
sudo pacman -S grub
,最后 - 更新grub:
sudo update-grub