Update-grub 检测 NVME 驱动器上的 Windows 10 系统。无法启动生成的条目。不是 UFI 系统

Update-grub 检测 NVME 驱动器上的 Windows 10 系统。无法启动生成的条目。不是 UFI 系统

我安装了 Ubuntu 18.04.2 LTS 和 grub 2,它从 sata SSD 驱动器启动。这是 BIOS 系统,而不是 UEFI。

我已将 Windows 10 恢复到 nvme 驱动器,并使用我的“Macrium Reflect”救援 USB 修复了其启动结构和驱动程序。 nvme 驱动器在 VirtualBox 中正常启动。所以我相信 Windows 10 磁盘配置正确。

% lsblk  -no name,serial,type,tran /dev/nvme0n1 
nvme0n1     S466NX0KB54472K disk nvme
└─nvme0n1p1                 part nvme

我想使用 Grub 2 在此 nvme 驱动器上启动 Windows 10。

Ubuntu可以很好地看到我的nvme驱动器,并update-grub找到Windows 10系统。这是生成的部分/boot/grub/grub.cfg

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 10 (on /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-chain-4E76C42676C4111F' {
    insmod part_msdos
    insmod ntfs
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root  4E76C42676C4111F
    else
      search --no-floppy --fs-uuid --set=root 4E76C42676C4111F
    fi
    parttool ${root} hidden-
    drivemap -s (hd0) ${root}
    chainloader +1
}

然而,当从 grub 启动 Windows 10 Entry 时,我收到 4 个错误:

error: no such devices 4E...111F
error: not a partition
error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120.
error: invalid signature

猜测缺少 NVME 驱动程序模块initramfs。或者--set=root需要不同的规格。

是这样吗?如果是这样,我该如何将其放入 grub 中?

这对我来说似乎是一个错误......

答案1

error: no such devices 4E...111F
error: not a partition
error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120.
error: invalid signature

这些消息来自 GRUB,因此此时甚至还没有加载 initramfs。

问题似乎是您的系统 BIOS 无法在启动时访问 NVMe 设备(至少在传统 BIOS 模式下不能)。

由于基本上所有带有用于 NVMe 驱动器的内置 M.2 插槽的系统都足够新,可以拥有 UEFI 固件,因此一些系统固件供应商似乎选择实现 NVMe 启动支持仅在 UEFI 本机模式下。一旦你的 Linux 运行起来,它就可以很好地看到 NVMe 驱动器,因此update-grub能够读取它,但在启动时,你的 GRUB 使用旧版 BIOS 功能来枚举系统磁盘,对于旧版 BIOS,NVMe 驱动器只是不存在。如果用于 NVMe 访问的相应 BIOS 扩展不可用,则 BIOS 会将 NVMe 驱动器视为通用 PCI/PCIe 设备,与任何磁盘设备都没有任何共同点。

您应该非常仔细地检查您的 BIOS 设置:如果有一个涉及 NVMe 启动支持的设置并且当前处于关闭状态,您应该尝试启用它。但是,如果您的 NVMe 驱动器位于附加卡上,则很可能无法在没有内置 NVMe 插槽的主板上的旧版 BIOS 下启动,除非该卡包含可提供访问所需 BIOS 例程的 BIOS 扩展 ROM NVMe 驱动器。

相关内容