安装到外部驱动器,Grub 使用错误的架构

安装到外部驱动器,Grub 使用错误的架构

我像在硬盘上一样在闪存驱动器上安装了 Lubuntu(不是 live/squashfs)。但每当我启动它时,我都会收到 grub 救援提示。

它说了这can't find /boot/grub/i386-pc/normal.mod解释了救援提示。但是,它是为 x86_64 安装的。该 arch 的文件夹包含所有模块。当我执行 grub-install 时,我将其定位到 x86_64。当我尝试明确地 insmod 它时,它说wrong arch elf magic。所以它肯定是在寻找 i386 并且在正确的位置,但为什么以及如何修复它?

我的问题与建议的重复问题不同,因为闪存驱动器上没有 Windows 安装,而 Windows 安装必须与机器无关。此外,两者提供的解决方案都无济于事 - 即使启动修复也无法解决问题。

答案1

我找到了解决方案。它以传统模式启动,因为它无法在 UEFI 中启动。EFI 分区包含 EFI/Boot 和 EFI/ubuntu。它在 /EFI/Boot 中寻找两个文件,grubx64.efi 和 MokManager.efi,但它们在 ubuntu 中,所以我照做了cp EFI/ubuntu/*.efi EFI/Boot,问题就解决了!需要澄清的是,根本问题是安装程序将启动文件放在了仅适用于固定驱动器的位置,解决方案是 cp -r 文件到正确的位置。

相关内容