如何找到 Grub 用于启动的驱动器名称?

如何找到 Grub 用于启动的驱动器名称?

第一次在这里提问(我很喜欢这个论坛,经常使用)。请原谅我对发生的事情解释得不太清楚。

我正在尝试从硬盘启动 Ubuntu ISO。我在查找/dev/nvme0n1用于 grub 的驱动器名称(即)时遇到了一些问题(即hd0,5)。我有 1 个 NVMe 和 2 个内部驱动器和 2 个外部驱动器。
我的 NVMe 上还有双启动的 Windows 和 Mint。

我的问题是:
我如何才能找到 grub 用于启动的驱动器名称?我查看了配置文件/boot/grub/grub.cfg并找到了我的启动条目,但我似乎找不到它们正在使用的驱动器名称或分区名称。

我正在编辑该文件40_custom/etc/grub.d添加以下内容:

# Ubuntu
menuentry 'Ubuntu ISO' {
set isofile='/home/user/Downloads/ubuntu-19.iso'
loopback loop (hd0,5)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=${isofile} quiet splash
initrd (loop)/casper/initrd.lz
}

我不确定应该用什么来代替驱动器名称(hd0,5)才能让 grub 指向我的/home/user/Downloads文件夹中的 ISO 文件?

提前谢谢你!这个社区太棒了!

答案1

我发现最简单的方法是启动 GRUB,使用 进入终端F2,然后按Tab让自动完成告诉我我需要知道的内容。请注意,您需要按 进入编辑模式e才能F2工作。

例子:

grub> ls
(hd0,msdos1) (hd0,msdos2)
grub> ls (hd0,msdos2)/home/
user1/ user2/

为了完整起见,我将包含一个当前正在我的机器上运行的条目:

menuentry "Recovery"{
        set isofile='/iso/linuxmint-19.3-cinnamon-64bit.iso'
        loopback loop (hd0,msdos6)${isofile}
        linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=${isofile} quiet splash
        initrd (loop)/casper/initrd.lz
}

相关内容