BIOS/GRUB 无法检测到外部硬盘驱动器

BIOS/GRUB 无法检测到外部硬盘驱动器

无法启动 Linux,因为 BIOS 启动菜单和 GRUB 救援映像控制台无法找到外部硬盘驱动器

答案1

由于某些 BIOS 的限制,无法检测到外部硬盘。一种解决方法是使用 USB 驱动器加载 GRUB,然后configfile在外部硬盘驱动器内运行 grub.cfg。但是 GRUB 使用来自 BIOS 的数据来获取设备列表,因此外部硬盘驱动器仍然不可见。解决方案是使用 GRUB 本机驱动程序来查找外部驱动程序。

https://www.gnu.org/software/grub/manual/grub/html_node/nativedisk.html#nativedisk

从固件磁盘驱动程序切换到本机驱动程序。

使用nativedisk,GRUB 将使用 GRUB 自己的驱动程序(而不是来自 BIOS 的数据)检测所有 USB 设备。完成此操作后,您可以ls在 grub> 控制台内正常使用,并且将列出所有 USB 设备。通过逐一列出每个设备,您可以找到 Linux 安装的根目录、启动文件夹、grub 文件夹和 grub.cfg。例如:ls (hd1,msdos2)/boot/grub/输出:grub.cfg

https://www.gnu.org/software/grub/manual/grub/html_node/configfile.html#configfile

将文件加载为配置文件。如果文件定义了任何菜单项,则立即显示包含这些菜单项的菜单。配置文件返回后,文件中的命令所做的任何环境变量更改都不会保留。

使用命令configfile,我们将加载外部驱动器内的 grub.cfg 来启动它。例如:configfile (hd1,msdos2)/boot/grub/grub.cfg

然后可以修改 USB 驱动器中的 grub.cfg 以使其自动运行nativediskconfigfile (hd1,msdos2)/boot/grub/grub.cfg无需用户输入。

示例 grub.cfg 放在 USB Grub Rescue 中

nativedisk
configfile (hd1,msdos2)/boot/grub/grub.cfg

相关内容