Ubuntu 修改分区后导致grub无法正确引导改善方法。


今天为了解决原来安装双系统的电脑后装的Ubuntu分区过小的问题的时候,将Windows分区的最后一个盘的一部分容量分配给了后装的Ubuntu,方法挺简单,和将大象装进冰箱一样,总共分为三步:

一、打开冰箱 — 不过冰箱是带锁的:先开锁,使用带有Ubuntu的U盘启动电脑,并采用试用模式进入Ubuntu,在ctrl+alt+T调出的终端中输入:gparted,在gparted的可视化界面就可以看到所有分区大小和使用情况;然后在这里就可以调整需要缩小的盘的大小,分出多余的容量,这样子就打开冰箱了。

注意:1. gparted需要root权限,因此需要输入sudo gparted;2. 若gparted未安装,可直接输入sudo apt-get install gparted安装。3. 调整大小后,要点击菜单栏的执行键,才能执行。

二、把大象放进去 — 还是在gparted里面,待前面调整完毕之后,再调整需要增加的分区的大小,将其内容左移到刚才释放的空间里,并执行。怎么样,是不是有一种将大象放进冰箱的感觉了?

注意:每一步都需要等前一步完全执行完毕才可以执行,不然会导致数据完全消失。

三、将门关上 — 不过门不是那么好关:将上述修改完毕,然后关闭gparted,并再次打开验证一下,分区确实已经改变了,说明修改大小的工作已经做完了。


大象已经进冰箱了!!!

但是当我们重启电脑的时候却发现,无法进入系统了,电脑界面上就一直显示:

error: unknown file system grub rescue >

这一个给我的感觉是大象虽然放进去了,但是冰箱却坏了,心情简直糟透了,于是我到处找方法,终于在多次尝试之后找到了正确的方法,现在记录如下:

1、 用ls的方式找到grub 所在的位置,其实刚才在分区的时候就已经很明显知道,’/’ 目录所的磁盘既是,但是为了保险我们用下面的方式验证一下。

先输入 ls  列出所有盘符,然后分别去 ls  (盘符名)/boot/grub 和 ls  (盘符名)/grub,若没有提示找不到路径即表示找到grub所在位置了。

2、 设置root路径 使用 set root =  (盘符名) 去指定root路径。

3、 设定prefix值 使用set prefix = (盘符名)/boot/grub or set prefix = (盘符名)/grub指定prefix值,根据上面找到的路径。

4、导入 Normal 启动模式  使用 insmod normal,然后再输入normal即可以启动进入系统了。

5、 安装和更新grub 进入系统之后,如下如下2个指令就可以修复系统grub,注意使用sudo,然后install时
dev对应的是磁盘,非磁盘分区。

sudo update-grub
sudo grub-install /dev/sda

然后就能心情愉快的重启了。

版权所有丨如未注明,均为原创,转载请注明转自:https://whonee.net/the-method-of-ubuntu-grub-error.html

《Ubuntu 修改分区后导致grub无法正确引导改善方法。》有4个想法

  1. 看到这篇文章突然想到以前也遇到过这个问题,当时也是网上找方法解决了,好像也找了个地方记下来了,不过现在一点也想不起来记哪里了。。。

发表评论

电子邮件地址不会被公开。 必填项已用*标注