于在Windows下面对分区修改,导致grub所在分区改变了,这样一来找不到grub了,Ubuntu开机就出现了:grub rescue >
在此情况下,可以如下解决,并不用重新安装系统
1. 找出你的Linux盘在那个分区以及grub目录在什么位置。
使用下面命令逐个试探:
grub rescue>ls
回车后,ls命令会列出所有磁盘分区信息,如:
(hd0,msdos8),(hd0,msdos7),(hd0,msdos6),(hd0,msdos3).......
循环使用如下命令,直至显示该分区所包含文件内容而不是unknown filesystem以及其他一些不正常信息
[注] 各版本不同 grub可在不同目录 可以先ls (hd0,8) 我的情况是 ls (hd0,8)/grub
grub rescue>ls (hd0,msdos8)/boot/grub
假设我们试到(hd0,msdos8)时,成功显示了文件内容,则表示此分区为Grub所在分区。
2. 设置环境
grub rescue>set root=(hd0,msdos8) #=>grub 所在分区
grub rescue>set prefix=(hd0,8)/boot/grub
3. 进入Grub
grub rescue>insmod normal
grub rescue>normal
至此,应该退出了grub rescue模式,进入了熟悉的grub模式
5. 修复grub
进入Linux系统后,在命令行里
sudo update-grub
sudo grub-install /dev/sda #=>sda是你的启动磁盘
作者 amath0312 来自 来源中国