2017-04-13 108 views
1

我的电脑曾经有Windows 7双系统& Ubuntu 15.04。 我今天下午为Ubuntu格式化了分区,并试图安装ArchLinux。 我拱新的分区信息是这样的:安装ArchLinux后找不到“/boot/grub/i386-pc/normal.mod”

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 

我重新开机后,我去了蛴螬救援页面,找到信息/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

有没有解决这个问题的方法?

回答

0

我已经解决了这个问题。

grub安装后,改变grub-install --recheck /dev/sda

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

这一行动将在路径/boot/grub创建目录i386-pc。重新启动后,我可以进入GRUB页面而不是GRUB RESCUE页面。然后键入:

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

我现在可以进入系统。输入一个指令,才能彻底解决问题:

grub-install /dev/sda 

下一次我重新开机,我能进入Windows和Linux,而无需输入任何代码:-)