00x0
linux
适用状况(亲测有效):shell
1.双系统,windows从新安装后没法进入grub引导启动linuxubuntu
2.删除或者重装linux后进入了grub rescue>模式启动不了系统(此状况网上有在此模式下set修改位置修复的方法,可是我都失败了。下面方法有效)windows
00x1spa
找一张linux的安装盘,从安装盘启动(安装系统你们确定会的)。选择live CD方式启动(不是真的安装系统)。rest
咱们要知道本机linux的分区挂载状况,若是只有/分区那么能够跳过此步骤,转入00x2code
首先须要知道本身linux的分区挂载状况,若是还能进入本机的linux系统那么执行下面两个命令查看:get
fdisk -l df
输出入下图:it
若是进不去系统能够在live cd中挂载各个分区,而后打开看下目录文件肯定原来linux系统的挂载状况。class
此处列出个人linux挂载状况:
磁盘分区 挂载点
sda6 /home
sda9 /
sda10 /usr
00x2
开始进入正式工做,通俗来讲(我小白一个不追究根本了,能理解就行),利用chroot能够切换根目录,以此来运行本机的linux系统,而后重建grub。(一下命令都要root用户执行)
挂载须要的目录:
#下面吧chroot须要用到的目录挂载到/mnt下做为根目录 #把本机系统的/目录sda9挂载到live cd的/mnt mount /dev/sda9 /mnt #bind选项能够挂载目录到一个目录,不须要挂载整个设备块 #将一些必要的设备挂载到/mnt下 mount --bind /dev /mnt/dev mount --bind /dev/pts /mnt/dev/pts mount --bind /proc /mnt/proc mount --bind /sys /mnt/sys #若是本机linux只有一个/分区那么下面命令能够跳过 #若是/usr挂载点独立分区那么也须要挂载一些,不然chroot后是找不到/bin/sh运行命令的(以下图) mount /mnt/dev/sda10 /mnt/usr
#chroot切换根目录到/mnt,而后就能够运行本机linux系统 chroot /mnt #运行此命令后注意提示符已经从~#变为/#(以下图)
注意:若是没有挂载/usr将会出现以下图错误,那么直接输入命令
#此时已经执行chroot变为/#后 mount /dev/sda10 /usr
若是没有出现上图错误,那么此时已经进入本机的linux系统开始恢复grub:
#个人linux在硬盘sda,要讲grub写入此硬盘 grub-install /dev/sda grub-install --recheck /dev/sda update-grub exit #此时输出能够看到已经找到两个系统的位置信息,重建成功,如上图:
接下来按挂载时候的倒序卸载设备和目录
若是出现target is busy能够忽略 umount /mnt/usr umount /mnt/sys umount /mnt/proc umount /mnt/dev umount /mnt 全部已经完毕,能够重启了 reboot
如今看到grub了吧!!!
00x3
附上:windos、linux双系统安装简要攻略
一、若是是先安装windows 7在安装linux的话,安装完linux都会提示写入grub引导,选择yes就行。启动能进windows和linux。
二、若是先安装的linux在安装windows的话,启动项是没有linux的。解决办法是在windows中安装easyBCD而后添加linux的启动项。
easybcd使用方法:
一、进入“添加新条目”:选择相应的类型,和linux系统的/或者/boot所在分区(能够选择自动)
二、进入“编辑引导菜单”:调整启动顺序和等待时间