新一期的Yushan培训时,在给新生安装ubuntu12.04系统重启后出现如题的问题,最终还是找到了解决办法
重启后电脑直接显示的就是grub rescue的命令行界面,以前安装从没遇过这种情况。
下面提供一种解决办法:
1、在grub rescue>输入ls命令查看分区情况
grub rescue>ls
grub rescue>ls (hd?,?)/boot/grub
grub rescue>set root(hd?,?)
grub rescue>set prefix=(hd?,?)/boot/grub
insmod /boot/grub/normal.mod
到这里会出现前面的错误(invalid arch independent ELF magic),本来接下来还有一条命令normal
2、这时需要一个启动盘进行grub配置的修改
在终端中输入:
sudo fdisk -lu /dev/sda
接着会显示分区:
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0fba0fb9
Device Boot Start End Blocks Id System
/dev/sda1 * 63 409593239 204796588+ 7 HPFS/NTFS/exFAT
/dev/sda2 409593301 1953523711 771965205+ f W95 Ext'd (LBA)
/dev/sda5 409593303 929520899 259963798+ 7 HPFS/NTFS/exFAT
/dev/sda6 929521664 960770047 15624192 82 Linux swap / Solaris
/dev/sda7 960772096 1953523711 496375808 83 Linux
知道了根目录安装在/dev/sda7上,因此可以可以执行下列更改:
- sudo apt-get remove grub-efi-amd64 #移除grub-efi
- sudo apt-get install grub-pc #安装普通grub
- sudo mount /dev/sda7 /mnt #挂载引导分区
- sudo grub-install --root-directory=/mnt /dev/sda
如果最后一条命令没有报错,grub已经恢复成功,重启即可
sudo update-grub
4、参考
http://datamining.xmu.edu.cn/bbs/forum.php?mod=viewthread&tid=624&extra=page%3D1
在安装Ubuntu 12.04后遇到启动时显示'grub rescue:invalid arch independent ELF magic'的问题。通过在grub rescue命令行下查看分区并设置root和prefix,尝试加载normal.mod时遇到错误。解决方案是使用启动盘,通过fdisk查看分区信息,确定根目录位于/dev/sda7,然后卸载并重新安装grub-pc,挂载引导分区并重新安装grub。完成这些步骤后,grub应已恢复,重启电脑即可。
1398

被折叠的 条评论
为什么被折叠?



