红联Linux门户
Linux帮助

win7+linux下grub rsecue模式恢复

发布时间:2015-09-08 10:32:51来源:linux网站作者:一切都将过去

纠结的一次恢复之旅,因为前段时间刚刚安装完linux(ubuntu12),刚刚在window7下对我的硬盘进行了重新分区,结果就悲剧了,两个系统都无法启动,差点让我重装系统。

原因:就是我对我的windows下的硬盘分区后增加了盘符,造成新增的盘符占用了linux启动盘的盘符,以至于在系统启动的时候无法找到启动项。


解决方法:
1、以某种方式重新进入windows,恢复重新分区前的分区模式和数量。

2、修改启动项,找到linux的启动,重新写入grub

一般无法启动会提示:
can not find filesystem
grub rescue>

rescue模式下可使用的命令有:set,ls,insmod,root,prefix(设置启动路径)


我先说第一种方法,也是很保守稳定的。

先假设grub2的核心文件在(hd0,8)分区,再来看看怎样从 rescue模式进入从(hd0,8)启动的正常模式(normal)。

假如你不知道启动文件在哪一个分区,不知道grub2文件处于哪个分区的,可以用ls命令查看,比如

ls (hd0,4)/ 查看(hd0,4)分区根目录,看看有没有boot文件夹
ls (hd0,5)/ 查看(hd0,5)分区根目录,看看有没有boot文件夹
ls (hd0,6)/ 查看(hd0,6)分区根目录,看看有没有boot文件夹

ls (hd0,7)/ 查看(hd0,7)分区根目录,看看有没有boot文件夹

ls (hd0,8)/ 查看(hd0,8)分区根目录,看看有没有boot文件夹

ls (hd0,9)/ 查看(hd0,9)分区根目录,看看有没有boot文件夹

………………………………………………………………

一直到你找到有boot文件夹的分区为止!

还是假设核心文件在(hd0,8)分区,那输入命令:

is  (hd0,8)/boot/ 查看(hd0,8)分区的/boot目录下文件

ls (hd0,8)/boot/grub/ 查看(hd0,8)分区/boot/grub目录下文件


接下来就可以进行从rescue到normal的转变动作:

(注意:有的时候,在boot文件夹下面没有grub文件夹,有的时候grub文件夹直接在根目录下。情况不一样,所以命令的格式也要做相应的改动。比如在根目录下的 ls (hd0,8)/grub  查看文件省去/root)

最后:执行以下命令:

grub rescue>root=(hd0,x)

grub rescue>prefix=/boot/grub

grub rescue>set root=(hd0,x)

grub rescue>set prefix=(hd0,x)/boot/grub

grub rescue>insmod normal

rescue>normal

此时会进入grub引导正常启动的界面,会让你进入windows或者linux。但是不能保证你重新启动计算机后恢复正常!

但我们可以进入windows恢复我们之前的错误操作。你可以把分过的分区重新还原到以前的状态,然后重启电脑,一切恢复正常了!


我再说第二种方法:其实第二种方法就是第一种方法的继续。不过不用我们还原在windows下的操作。

紧接着第一种方法。到达重启界面后,按 c 进入命令行模式。

步骤1、grub rescue>root=(hd0,x)     //x 就是我们刚才找到的核心分区

grub rescue>prefix=/boot/grub

grub rescue>set root=(hd0,x)

grub rescue>set prefix=(hd0,x)/boot/grub

grub rescue>insmod normal

rescue>normal -------->若出现启动菜单,按c进入命令行模式

rescue>linux /boot/vmlinuz-xxx-xxx root=/dev/sdax 内核版本号 -xxx-xxx可以按Tab键查看后再手动补全。

rescue>initrd /boot/initrd.img-xxx-xxx

rescue>boot

然后静静等待着恢复正常。


grub菜单改乱后如何启动系统:http://www.linuxdiyf.com/linux/13905.html

Ubuntu 15.04修改grub默认启动项和Windows 7做双系统:http://www.linuxdiyf.com/linux/12783.html

Ubuntu系统grub修复的方法:http://www.linuxdiyf.com/linux/12961.html

Linux操作系统启动管理器-GRUB:http://www.linuxdiyf.com/linux/12044.html

Ubuntu通过Live CD更新Grub恢复引导Boot Menu:http://www.linuxdiyf.com/linux/11375.html