其实在这种情况下还是可以手动设置启动设备,进入Ubuntu的
首先你需要输入”ls“命令查看当前系统分区,这时候会出现你电脑硬盘的分区信息,形式如下:
(hd0) (hd0,msdos5) (hd0,msdos1) (hd1) (hd1,msdo1)
以上就是分区信息,有上面的msdos5有可能是单独的数字"0,1,2,5,6...."等,具体为什么暂未明白
必须要从以上的分区信息找到你挂载/boot的地方,例如我的电脑/boot就是挂载在(hd1,msdo1)上的
这时候输入"set"命令,会出现你的一些设置信息,形如下:
prefix=(hd0,1)/boot/grub
root=hd0, 1
很明显,之所以找不到设备是由于我的/boot是在(hd1,msdo1)上的,而它却尝试从(hd0,1)启动我的系统,当然不行啊!因此我分别输入以下两个命令
prefix=(hd1,msdo1)/boot/grub
root=hd1,msdo1
这时候再次输入set命令可以看到信息已经更改过来了
再调用如下命令:
grub rescue>insmod /boot/grub/normal.mod
看到"grub rescus>" 由灰色变成白色了,这表示normal.mod文件已经被正确加载了
然后再次输入"normal"命令可以看到系统已经正确启动了。
这时候进入系统,但grub依然未修复好,因为下次启动系统,又会提示找不到设备了,虽然网上说可以通过一系列指令修复grub,详细参考一下网页:
但是对我无效,于是我只能尝试马上更新我的Ubuntu,更新过程中更新了内核,于是顺带地,它自然地帮我重装Grub并修复了问题了。
其实我发现,如果安装系统的时候选择安装过程中立即下载更新包并更新系统,则可避免这个问题,看来Ubuntu对于各类硬件的支持一直是在不断强化中的
没有评论:
发表评论