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所在分區(能夠選擇自動)
二、進入「編輯引導菜單」:調整啓動順序和等待時間