![Grub“没有这样的设备”错误与配置不对应](https://linux22.com/image/1431273/Grub%E2%80%9C%E6%B2%A1%E6%9C%89%E8%BF%99%E6%A0%B7%E7%9A%84%E8%AE%BE%E5%A4%87%E2%80%9D%E9%94%99%E8%AF%AF%E4%B8%8E%E9%85%8D%E7%BD%AE%E4%B8%8D%E5%AF%B9%E5%BA%94.png)
GRUB 无法启动。BIOS 尝试先启动第二个硬盘(在传统模式下,第一个硬盘是 Windows),但这会产生错误no such device: cfb69400...
。
给定的 id 没有出现在grub.cfg
或 的输出中blkid -o full -s UUID
。
grub-install /dev/sdb
没有报告任何错误。在之前的安装过程中,Grub 被错误地安装了/dev/sda
,并且从此磁盘启动确实有效(使用 UEFI),但这不是我需要的。
我无法理解这个不存在的硬盘驱动器 ID 从何而来,如果grub-install
它能工作但grub.cfg
不包含它。
我该怎么做?谢谢。
答案1
除其他外,如果 grub 无法访问包含 grub 安装的分区 ( /boot/grub
),则 grub 会抛出此错误。发生这种情况的原因可能是正在使用的 grub 未按预期配置,因此无法自行安装所需的模块核心镜像。
(我不确定这是否是问题的根源,因为在我看来,blkid
在这种情况下应该显示 UUID。请确保blkid
以 root 身份运行以显示当前信息。)
要安装所需的模块核心镜像使用类似的东西grub-install --modules part_msdos --root-direcotry=<installation_root> /dev/sdb
。
part_msdos
例如,使用模块作为通常的 DOS 分区标签。
确保配置正确<installation_root>
,从目标磁盘启动时必须可以访问。
请参阅我的回答https://unix.stackexchange.com/questions/163791/place-grub-on-virtual-disk/210497#210497也一样。