linux win7 修复

05-01

首先 在win7上下载一个EasyBCD2.2, 然后就是下面图示过程添加 linux系统所在分区 以便引导进入linux!

linux win7 修复
linux win7 修复
linux win7 修复

到这里就可以了, 我是已经把win 自己的给删除了 所以 只显示了linux的!到这里 操作无误的话 可以点工具重新启动了!!

重新启动我们会发现出来了引导选项 进入linux系统, 但是到我这里遇到的问题就是 这个引导其实 没有找到我们在linux下 grub.conf 或者 grub.cfg所在的正确目录,(是cfg 还是 conf 后缀取决自己系统)!

所以我们要手工配置这就是说 我们最好 首先 在linux系统下 查找到grub.conf/cfg所在的目录, 和 清楚自己 linux系统(终端下 fdisk -l命令查看) 所在硬盘分区 再开始操作!!!

linux win7 修复

好 出现这个这个情况后 按 e 进入编辑状态, 注意! 这里 只要先把grub.conf或者grub.cfg 的给修改正确 然后 (hd0, hdx) x 就是系统所在分区, 其实可以一个一个试这里不会

出问题的,修改好之后 按 b 进入引导 如果无误 到这里 就会重新看到你熟悉的 grub 引导界面了! 好 进入 系统后 还需要对 grub 进行 修复, 也就是 重写mbr的引导

linux win7 修复

进入了系统之后进入终端首先就是 update-grub fdisk -l (查看系统所在分区编号)

然后就是 mount /dev/sdax /mnt (x代表你系统所在分区编号)

重装grub-install --root-directory=/mnt /dev/sda (这里sda就是硬盘 不需要加分区编号)

成功之后 可以reboot 了( 注意, 我这里重启 会进入grub recue模式, 不知道为何,难道是还需要 update-grub一下再重启)

下面 再说下 如果遇到了 grub recue 情况 怎么解决的办法

grub resuce>ls 罗列所有磁盘分区信息 比如 (hd0) (hd0, msdos1) 这样

然后就是 找出 grub文件所在 分区 也就是 ls (hd0, msdosX)/boot/grub (X可变) 当罗列出一大堆 说明找到了

可以继续下面的命令:

set root=(hd0, msdosX)

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

insmod /boot/grub/normal.mod

normal

现在就可以重新看到正确的grub引导了 不过 进入 系统 还需要再最后解决下问题!

sudo update-grub

sudo grub-install /dev/sda

到这里 reboot 一般来说问题就解决了!其中个别缘由也不是太清楚, 希望以后慢慢能弄懂!