我以前使用双启动 Windows + Linux Mint,但现在我决定安装 Fedora 而不是 Mint。我安装 Windows 大约一个月了,现在我终于有时间安装 Fedora。但是,Windows 10 没有出现在 grub 中。
我已经尝试过的:
- grub-customizer。但它找不到 Windows
- 按照此处所述,在 etc/grub.d/40_custom 中添加自定义条目https://ask.fedoraproject.org/en/ques...但这没有帮助。
grzb2-mkconfig 的输出
[ajezek@localhost ~]$ sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
[sudo] password for ajezek:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.8.6-300.fc25.x86_64
Found initrd image: /boot/initramfs-4.8.6-300.fc25.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-da325ed6b7fc41dab3e1b04fa22ea0b4
Found initrd image: /boot/initramfs-0-rescue-da325ed6b7fc41dab3e1b04fa22ea0b4.img
Found linux image: /boot/vmlinuz-4.8.6-300.fc25.x86_64
Found initrd image: /boot/initramfs-4.8.6-300.fc25.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-da325ed6b7fc41dab3e1b04fa22ea0b4
Found initrd image: /boot/initramfs-0-rescue-da325ed6b7fc41dab3e1b04fa22ea0b4.img
done
fdisk:(Windows 和 Fedora 都安装在 sdb(240GB SSD)上,sda 是仅包含数据的 1TB HDD 和一些联想恢复分区)
[ajezek@localhost ~]$ sudo fdisk -l
[sudo] password for ajezek:
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: D1425B80-9CC2-4A00-9762-65C4E15D3D92
Device Start End Sectors Size Type
/dev/sda1 2048 923647 921600 450M Windows recovery environment
/dev/sda3 310075392 1921404927 1611329536 768.4G Microsoft basic data
/dev/sda4 1921404928 1953523711 32118784 15.3G Windows recovery environment
Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 503D3D3C-C8C7-4771-84A7-61335D527168
Device Start End Sectors Size Type
/dev/sdb1 2048 34815 32768 16M Microsoft reserved
/dev/sdb2 204800 419635199 419430400 200G Microsoft basic data
/dev/sdb3 34816 204799 169984 83M EFI System
/dev/sdb4 419635200 461578239 41943040 20G Linux filesystem
/dev/sdb5 461578240 467869695 6291456 3G Linux swap
分区表条目不按磁盘顺序排列。Fedora 安装在 sdb4 上,EFI 分区安装在 sdb3 上。Windows 安装在 sdb2 上。
GParted:
我应该怎么办?
答案1
首先,确保您已在 Windows 中禁用快速启动和休眠功能,如下所示:
如果其中任何一个功能处于活动状态,它都可以离开EFI 系统分区 (ESP)处于不一致的状态,这可能导致os-prober
无法检测到 Windows。
其次,如果上述方法没有帮助,你可能需要给我的rEFInd 启动管理器尝试一下。有时它比 GRUB 更能胜任这项任务。如果愿意,您可以从 USB 闪存驱动器或 CD-R 中尝试它,然后仅在它按预期工作时才将其安装到硬盘上。但请注意,我的 USB 闪存驱动器和 CD-R 映像不支持安全启动,因此如果安全启动处于活动状态,您需要暂时禁用它或跳过一些步骤来为这些映像添加安全启动支持。我提供了 rEFInd 的 RPM 版本,因此安装很容易;但如果您想在安全启动处于活动状态的情况下启动,则需要将 rEFInd 密钥添加到您的 MOK 列表中。请参阅rEFInd 安全启动文档了解详情。
答案2
您需要 os-prober 来检测其他系统:
sudo dnf 安装 os-prober
如果已安装,您应该重新运行 grub2-mkconfig。