安装ubuntu 时,启动是用grub2 进行启动。我的win7 在C 盘, Ubuntu 空间是从D 盘里分出来的。我们知道,每次系统启动时都是先进
入grub ,也就是先在ubuntu 的启动目录里选择进入哪个系统,如果按分区来讲,grub2 在(hd0,msdos7) 也就是我的ubuntu 所在的分区。
那么启动时root 应该设在(hd0,msdos7), 可一键ghost 会修改启动,它把root 改在(hd0,msdos9), 这是个windows 分区,也就是NTFS
分区,ubuntu 是不能识别这种文件系统的,所以就有了error:unknown filesystem ,这种情况下自然不能启动,那么grub2 就会启动
grub rescue 模式,就是修复模式。那么我们要做的就是把grub 重新指向(hd0,msdos7) 。
下面是具体步骤:
①查看分区
因为每个人的分区不一样,所以我们要查看分区, 用ls 指令
grub rescue>ls
回车后,就会出现
(hd0) (hd0,msdos9) (hd0,msdos8) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos1)
grub rescue>
注:我用的是grub2, 对于grub 用户,分区前没有msdos 字样
上面是我的分区,每个人的不一样。
grub rescue>set 回车
prefix=(hd0,msdos9)/boot/grub
root=hd0,msdos9
从上面可以看出来现在我的系统是从(hd0,msdos9) 里启动的。
那么怎么知道ubuntu 在哪个分区呢?进入第二步
②寻 ubuntu 所在分区
这一步我们要一个一个的试,
还是用ls 指令
先试下在不在(hd0,msdos8 )里边
grub rescue>ls (hd0,msdos8)
回车会发现,不是,还是unknown filesystem
接着来
。。。。。。。。。
当我试到
(hd0,msdos7) 的时候,可以看到一下子多了很多字,这些就是我ubuntu 主文件夹下的文件夹和文件的名字。OK ,到分区了!
③修改启动分区
grub rescue>root=(hd0,msdos7)
grub rescue>prefix=/boot/grub //grub 路径设置
grub rescue>set root=(hd0,msdos7)
grub rescue>set prefix=(hd0,msdos7)/boot/grub
grub rescue>insmod normal // 启动 normal 启动
grub rescue>normal
依次敲入上面的指令,是不是看到熟悉的启动菜单了?选 win7 后,一键 Ghost 就开始备份系统了。别高兴太早,一切还都没开始呢。
如果你不是因为一键 Ghost 问题进入 grub rescue, 可以直接跳到第⑤步
④再来一遍
当你等着一键Ghost 备份完系统,重启后,你发现还是
error:unknown filesystem
grub rescue>unknown怎么处理
别着急,再把前三步进行一遍就可以了
⑤进入命令行 启动 Ubuntu
进入系统启动选项界面后,你发现,无论点那个还是进不去,这是因为你还没有真正的修改grub, 这个要到ubuntu 里修改
进入系统启动项界面后,按C 进入命令行模式
grub >set root=hd0,msdos7
grub >set prefix=(hd0,msdos7)/boot/grub
grub >linux /vmlinuz-xxx-xxx root=/dev/sda7 // 里边的 xxxx 可以按 Tab 键,如果
有 acpi 问题 , 在最后加一句 acpi=off
grub >initrd /initrd.img-xxx-xxx
grub >boot
Ubuntu 正常启动了吧?
⑥进入 ubuntu 修复 grub
大功就要高成了
进入Ubuntu 后, 修复grub
在终端里运行
sudo update-grub
重建 grub 到第一硬盘 mbr
sudo grub-install /dev/sda
好啦,重启,一切搞定!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。