" /boot/grub/i386-pc/normal.mod未找到"安装ArchLinux之后

时间:2017-04-13 12:02:41

标签: archlinux grub

我的电脑曾经拥有适用于Window 7和Windows的双系统。 Ubuntu 15.04。 我今天下午为Ubuntu格式化了分区,并尝试安装ArchLinux。 Arch的新分区信息如下:

dev/sda5: 20G /mnt
dev/sda6: 200M /boot
dev/sda7: 6G [SWAP]
dev/sda8: 100G

我非常顺利地安装了grubefibootmgros-prober。我使用的说明正是:

pacman -S grub efibootmgr os-prober
grub-install --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

重新启动后,我转到了grub救援页面并找到了信息/boot/grub/i386-pc/normal.mod not found。我发现我的normal.mod位于/boot/grub/x86_64-efi路径下。我试过以下方法:

set root=(hd0,msdos5)
set prefix=(hd0,msdos5)/boot/grub/x86_64-efi
insmod /boot/grub/x86_64-efi/normal.mod

但它不起作用并返回信息error: invalid arch-dependent ELF magic

这个问题有解决办法吗?

2 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。

安装grub后,将grub-install --recheck /dev/sda更改为

grub-install --target=i386-pc --recheck /dev/sda

此操作将在路径i386-pc下创建目录/boot/grub。重启后,我可以进入GRUB页面而不是GRUB RESCUE页面。然后输入:

set root=(hd0,5)
set prefix=(hd0,5)/boot/grub
insmod normal
normal

我现在可以进入系统了。再输入一条指令来完全解决问题:

grub-install /dev/sda

下次重新启动时,我可以输入windows和linux而无需输入任何代码: - )

答案 1 :(得分:-2)

尝试在Bios中将SATA模式从AHCI更改为IDE(开机时为F2)。我这样做是在Linux Mint下解决了类似的问题,而忽略了有关可能使HDD无法读取的警告。保存并退出设置菜单后,无需任何其他操作即可启动Linux Mint。