雙系統恢復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所在分區(能夠選擇自動)

         二、進入「編輯引導菜單」:調整啓動順序和等待時間

相關文章
相關標籤/搜索