双系统恢复linux的grub2系统引导(附带windos、linux双系统安装简要攻略)

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所在分区(能够选择自动)

         二、进入“编辑引导菜单”:调整启动顺序和等待时间

相关文章
相关标签/搜索