Grub 无法启动 Windows:“错误:不是有效的根设备”

Grub 无法启动 Windows:“错误:不是有效的根设备”

问题。 我正在尝试设置双启动的 Ubuntu/Windows 安装。到目前为止,这只取得了部分成功:grub 似乎检测到了我的 Windows 安装,但无法启动它。当我选择它时,它提供了一条消息,提示“错误:不是有效的根设备。”

磁盘。 我在两个磁盘上构建了双启动安装:

  • /dev/sda包含 Windows 10、UEFI。此操作系统首先安装在两个驱动器之一上。为了防止污染,我在安装过程中移除了另一个驱动器。该驱动器包含四个分区:
    1. /dev/sda1、EFI 系统分区、FAT32、100MB
    2. /dev/sda2,Microsoft 保留分区,未知,16MB
    3. /dev/sda3,基本数据分区,NTFS,237+GB
    4. /dev/sda4, >>未命名分区<<, NTFS, 530MB
  • /dev/nvme0n1第二个驱动器包含 Ubuntu 22.04.1,UEFI。此操作系统是第二个安装的。在安装过程中,我选择了“与 Windows 一起安装”选项。该驱动器包含两个分区:
    1. /dev/nvme0n1p1、EFI 系统分区、FAT32、512 MB
    2. /dev/nvme0n1p2, >>未命名分区<<, EXT4, 890+ GB

安装后。 安装完成后,grub 立即识别 Windows 安装,但是每次我尝试选择它时,它都会返回“错误:不是有效的根设备”。我执行了sudo os-probersudo update-grub,但都无济于事。grub 启动顺序如下:

insmod fat
set root='hd0,gpt1'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  64DE-E837
else
  search --no-floppy --fs-uuid --set=root 64DE-E837
fi
chainloader /efi/Microsoft/Boot/bootmgfw.efi

特点。 有一件事我觉得很奇怪。让我们讨论一下三种情况:

  • 当我打开电脑时,等待 grub 出现并选择 Windows,出现错误。
  • 当我打开电脑、进入启动菜单并选择“UEFI - Windows 启动管理器”时,我确实启动了 Windows。
  • 当我打开电脑时,进入启动菜单,选择“UEFI - Ubuntu”,然后在 grub 中选择 Windows,它也会启动到 Windows。

我对整个情况感到困惑。任何意见都非常感谢!

答案1

最常见的问题是 Windows 快速启动。

您可能还需要关闭 Windows Bit Locker 或 UEFI 安全启动。尽管 Ubuntu 可以在安全启动开启的情况下运行,但 grub 可能无法启动 Windows。我实际使用的最新版本在安全启动开启的情况下启动了 Windows。

有关 Windows 快速启动和休眠标志的更多信息。

无法挂载 Windows 10 分区;它“处于不安全状态”

由于休眠,无法挂载 Windows (NTFS) 文件系统

答案2

使用 HP elitedesk PC 和 Debian 12 时遇到了同样的问题 - 包括 Erik 描述的“怪异现象”。

我按照 oldfred 的建议禁用了 Windows 中的快速启动,但还没有成功。检查 BIOS 中的更新和其他选项后,我发现我的 BIOS 也有一个“快速启动”选项。很奇怪,但关闭它也能解决我的问题。

相关内容