如果启动分区位于 NVME 驱动器上,则将 MemTest86 添加到 Grub

如果启动分区位于 NVME 驱动器上,则将 MemTest86 添加到 Grub

我想将 MemTest86 添加到 Ubuntu 20.04 grub 菜单中。我按照MemTest86 官方指南,但他们假设系统 EFI 分区位于 SATA 驱动器 (/dev/sdX) 上。我的系统分区有 NVME 驱动器,因此下面的条目不起作用。如果我在 grub 菜单中选择了“MemTest86”条目,它就找不到该位置。我应该如何修改/etc/grub.d/40_custom

df | grep efi
#/dev/nvme0n1p1                   98304     30865     67439  32% /boot/efi

sudo nano /etc/grub.d/40_custom
menuentry 'MemTest86' {
    insmod part_gpt
    insmod fat
    set root='nvme0n1,gpt1'
    chainloader ($root)/EFI/memtest86/BOOTX64.efi
}

答案1

我最近自己也这么做了。在 grub 菜单上输入“c”以获取命令行。然后输入“ls”以获取所有驱动器的列表。驱动器/分区都是 (hd#,gpt#),无论它们的物理位置如何。所以,我所做的就是列出每个驱动器的根目录,直到找到 efi。我的 (hd0) 是 Ubuntu HD。(hd1) 是一个用于备份的 2TB HD。(hd2) 是我的 Windows nvme 驱动器。我用“ls (hd2,gpt1)/”找到了 efi。我将 root 设置为它,它成功了。我还在开头放了“insmod gzio”,但这可能没有必要。

答案2

我读到 (hd#,gpt#) 的格式称为 Grub Legacy Device Naming Scheme 或 IDE Legacy Device Naming Scheme。

在启动过程中,在 Grub 菜单中输入“c”进入 Grub 命令行模式,然后输入“ls”获取设备名称列表。

此外,输入“ls -l”查看更多详细信息,包括可以与磁盘或 Gparted 信息匹配的 UUID,以查找特定磁盘和分区。

看: https://docs.oracle.com/cd/E36784_01/html/E36801/gkvii.html

并在“对于 NVMe 驱动器:”子标题下

https://www.memtest86.com/tech_configuring-grub.html

相关内容