解决双系统开机no such device:

问题描述:

我的电脑本来是Ubuntu+win7双系统,自己前天想换成win64位,于是就安装系统,结果装好了之后开机进入grub选择win7之后,屏幕显示

no such device:

press any key to continue...

如果随便按任何键也能进入系统,但是还是觉得不太好看

分析:

这次跟以前安装系统不一样,以前双系统环境下,重新安装win7,grub就消失了,但是这次grub引导居然还在,那么肯定是这次安装系统后,win7没有将它的系统引导写入硬盘的mbr,而是只写入了C盘分区的mbr(我也不知道这个位置叫做什么,姑且叫做分区mbr吧)。那么问题就很明显了,既然grub没有覆盖,那么它的配置文件内容肯定也没有修改,但是现在却显示no such device,那么可以确定,这个no such device:后面的一串字符是会因为分区格式化而更改的。而且我在grub的菜单界面选择win7那一行然后按e编辑,看到win7的配置有一行是 set=root uuid=,这个uuid后面也是一串类似的字符串,那么我就怀疑问题就出在这个字符串上,uuid是指统一唯一识别码。

现在问题的原因很明显了,不过还是需要去实际测试一下是否正确。

实际验证:

首先找到C盘(安装win7的分区)的uuid,有两种方法

然后再Ubuntu下编辑grub的配置文件/boot/grub/gurb.cfg,修改win7的配置,将set=root uuid=后面的那一串字符替换成我们上一步查看到的C盘的uuid即可。

重启,顺利进入win7,成功。

结论:

只要努力去思考分析,找到问题的原因,然后去尝试,往往我们自己也能够解决看似复杂的问题。

享受解决问题的过程,而不是遇到问题就想到网上搜。培养自己解决问题的能力。

疑惑:

虽然问题解决了,但是心中还有些疑惑:

win7 32位安装的时候会覆盖硬盘MBR,为什么win7 64位不覆盖呢?

uuid跟分区的关系也不是太懂

grub的使用还需要学习

你可能感兴趣的:(解决双系统开机no such device:)