安装了Windows和Ubuntu双系统后,开机出现 error:no such partition,解决办法见下面的帖子:
点击此处链接
以下是原文(最后一句命令有所修改)
error:no such partition
Entering rescue mode…
grub rescue>
之前重装过系统,所以这个问题已经遇到过好几次,今天记录一下
在这种情况下可使用的命令不多,有ls,set,insmod这几个
输入ls,出现以下信息:
(hd0) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5)
这些信息应该是磁盘分区的信息,模式大概是(hd0,msdosX),X表示数字
输入set,出现以下信息:
cmdpath=(hd0)
prefix=(hd0,msdos8)/boot/grub
root=hd0,msdox8
我们要找到Ubuntu是装在那个分区上的,方法如下:
ls (hd0,msdosX)/grub 或者 ls (hd0,msdosX)/boot/grub
依次输入上述命令,X表示数字,是ls命令出现的数字,如果出现很多的文件信息,表示是这个分区
假定输入ls (hd0,msdos4)是出现很多信息。接下来,进行设置:
set root=(hd0,msdos4)
set prefix=(hd0,msdos4)/grub
注:如果上面是/boot/grub,那么下面也改成相应的命令
设置完后可以输入set命令查看,输出信息会变为:
cmdpath=(hd0)
prefix=(hd0,msdos4)/grub
root=hd0,msdos4
继续输入命令:
insmod normal
这个对我有效
或者
insmod /grub/normal.mod
或者改成相应的/boot/grub/…
最后,输入:
normal
即会恢复grub的启动菜单
进入Ubuntu系统后,输入以下命令:
sudo apt-get install grub2
sudo update-grub
sudo grub-install /dev/sda //原文是 sudo update-install /dev/sda
重启,恢复正常