ubuntu手动删除swap分区后重启,出现no such patition,grub rescue解决方案

来源:互联网 发布:樱井知香2010年番号 编辑:程序博客网 时间:2024/06/06 06:47

之前手动调整swap分区大小之后,将原有的swap分区给删除了,手贱啊,结果重启后系统进不去了,提示:"no such partition",本来想重装系统,奈何之前没备份。于是乎网上各种查资料,折腾了一下午,终于搞定了,具体方法如下:

输入“ls”命令可以查看所有的磁盘分区信息:

(hd0),(hd0,msdos7),(hd0,msdos6),(hd0,msdos5),(hd0,msdos4),(hd0,msdos3),(hd0,msdos2),(hd0,msdos1)

输入set命令,可以查看root和prefix的路径设置信息如下:

root=(hd0,msdos8)

prefix=(hd0,msdos8)/boot/grub

而ls命令列出的磁盘分区中并没有(hd0,msdos8),我想这就是提示“no such partition”的原因,原本(hd0,msdos7)分区是swap分区,被我删除了,少了一个分区,之前linux的boot安装在(hd0,msdos8)中,删除swap分区后,分区重新分配设备id,结果原来的(hd0,msdos8)变成了(hd0,msdos7),所以提示“no such partition”。需要找到boot的安装目录,进行重新引导。可通过“ls (hd0,msdosn)/boot/grub”找到boot的所在分区(其中n为编号),如果不是boot所在分区会提示“unknown filesystem”,假如最后找到boot所在分区为(hd0,msdos7),输入以下命令:

set root=(hd0,msdos7)

set prefix=(hd0,msdos7)/boot/grub

insmod normal

normal

则可以进入系统选择界面,登陆系统后,打开终端输入以下命令:

sudo update-grub

sudo grub-install /dev/sda

sudo reboot

至此问题得以解决。本文针对的是boot没有单独分区的情况,如果boot目录单独一个分区,请参考http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=348503。

0 0
原创粉丝点击