Ubuntu引导出问题grub rescu模式下:“error : unknown filesystem”或者 找不到normal.mod 的解决办法
感谢http://www.linuxidc.com/Linux/2012-06/61983.htm,因为参考了其中的内容。
下面是修改和完善。
问题原因:
(win7,ubuntu双系统下)
强制关机;
ubuntu升级;
装机后重启-强制关机(我昨天是这一种,多次装机,每次都重启卡在那里,要按ctrl C; 然后,然后就没有然后了,见标题描述,两种情况都有。 );
硬件组合等原因;
其它未预料原因。
描述:
“error : unknown filesystem”
找不到normal.mod
解决办法:
解决办法有多种,以应对各种情况的各种问题。包括:boot repair 工具等。
这里仅叙述其中的一种,只对部分问题有效。
1:首先使用ls命令显示出ubuntu分区的安装信息:
1 grub rescue>ls
一般会罗列出所有磁盘的分区信息,比如(hd0,msdos1)(hd0,msdos2)(hd0,msdos4)(hd0,msdos7)(hd0,msdos10)等等
2:之后输入:
1 grub rescue>set
会列出当前grub的设置,比如prefix=(hd0,msdos7)/boot/grub,root=hd0,msdos7,或者prefix=(hd0,msdos7)/grub,root=hd0,msdos7,正是因为这些设置错误,才导致grub无法找到Ubuntu分区,之后是重新进行grub设置
3:如果你知道ubuntu是安装在哪一个分区的,比如(hd0,msdos7),则分别输入:
1 grub rescue >set root=hd0,msdos1 2 grub rescue> set prefix=(hd0,msdos1)/boot/grub 3 (有些情况下会是set prefix=(hd0,msdos1)/grub,以set之后显示的grub设置为依据)
4:之后输入:
1 insmod normal 回车
我尝试过的有 insmod /boot/grub/normal.mod (不记得了,大概成功过一次。)
insmod /grub/normal.mod
insmod /boot/grub/i386-pc/normal.mod (成功过一次。)
实际上,可以查看 /boot/grub/下是否有normal.mod文件,有时候没有,但是仔细看,发现grub下面有i386-pc,
其中有很多的模式文件和镜像文件,其中很可能就有我们需要的normal.mod 。
如果仍然出现 error:unknown filesystem 则重新回到步骤2进行grub设置;如果出现一个高亮的grub rescue>,表示分区设置正确了,之后再输入normal,回车,就又会看到我们那个熟悉的紫色界面了:),不过到这里还没有结束,因为如果你再次重启系统的话,依然会碰到error:unknown filesystem这个问题,然后你又要重复上诉步骤才能看到系统的选择界面,因此还有一步需要完成,
5:选择ubuntu,进入之后启动终端,输入如下命令
1 sudo update-grub 2 sudo grub-install /dev/sda (这里一定要注意是sda, 不是sda8,sda7 等分区名称。否则必然会出问题。)
修复grub分区信息,这样后就不会出现如步骤5中所诉的问题了
每一个不曾起舞的日子,都是对生命的辜负。
But it is the same with man as with the tree. The more he seeks to rise into the height and light, the more vigorously do his roots struggle earthward, downward, into the dark, the deep - into evil.
其实人跟树是一样的,越是向往高处的阳光,它的根就越要伸向黑暗的地底。----尼采