grub-mkconfig 找不到 Windows 10

grub-mkconfig 找不到 Windows 10

我的 PC 中有两个 SSD,一个运行 Windows 10,另一个全新安装了 Antergos。
启动 Antergos 来设置 grub 并进行安装,但遇到困难。
我已经通过文件管理器安装了 Windows,因此我可以看到所有 Windows 文件。然后我运行了sudo grub-mkconfig -o /boot/grub/grub.cfg它,不幸的是它没有启动Windows。
Generating grub configuration file ... Found theme: /boot/grub/themes/Antergos-Default/theme.txt Found Intel Microcode image Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initramfs image: /boot/initramfs-linux-fallback.img done 尝试运行 os-prober,但也找不到它。 驱动器信息

不确定是否有什么大错特错的地方。但这个 SSD 之前一直运行着 Debian,直到今天。所以我之前双启动工作得很好。

答案1

这个问题并不容易正确解决,因为每个设备和发行版都有自己独特的,但我会尝试一下

当您安装 Windows 分区时,请转到终端并检查安装了哪个分区 Windows

fdisk -l

在输出中注意具有 NTFS 文件系统的分区(大多数仅由 Windows 使用),假设它是(例如 /dev/sdb2)

然后

ls -l /dev/disk/by-uuid

然后取出与您的分区相关的小字符串(例如/dev/sdb2),该字符串将类似于(AC46D28646D250A6)

现在在您最喜欢的文本编辑器中编辑 /etc/grub.d/40_custom (如果没有找到,那么您需要找到一个负责在 Linux 发行版中添加启动条目的文件)

在 40_custom 的底部添加此行,将我的 (AC46D28646D250A6) 字符串替换为您自己的源代码

menuentry 'Windows 10' {
    insmod ntfs
    insmod ntldr
    insmod part_msdos
    insmod search_fs_uuid
    search --fs-uuid --no-floppy --set=root AC46D28646D250A6
    ntldr /bootmgr
}

然后转到 /boot/grub2 并备份当前grub.cfg 和现在的内容

grub2-mkconfig --output=/boot/grub2/grub.cfg

并重新启动以检查 Windows 是否现在已添加到您的启动项菜单中

还要注意,40_custom(或您的唯一文件)中提供的选项可能需要更改才能匹配您的机器状态

相关内容