用win7的NT6引導Ubuntu12.04手動設置方法和錯誤修復

 首先,本文采用的全部是手動製作引導的方式,沒有使用第3方的EasyBCD等軟件實現Win7的NT6.x引導ubuntu12.04系統。

 本文討論也是單獨分區安裝ubuntu12.04系統,不是虛擬機安裝和wubi安裝的引導。

  一、新安裝ubuntu12.04後在NT6.x下添加引導菜單
1、ubuntu的安裝需要注意:不要把grub2的引導菜單安裝在sda上。而是安裝在當前根分區 / 上,否則就是grub引導win7和ubuntu了。

2、要NT6.x能引導ubuntu,需要一個啓動文件,這個啓動文件就是安裝在ubuntu分區的grub2的內容,一般這些內容在ubuntu分區的頭512字節。啓動文件的製作方式如下: 
A、
在 Ubuntu中製作命令:可以用dd命令很方便地提取出來 (經過實際驗證這種方式製作的bin文件準確率不高)
                dd if=/dev/sda2 of=/ubuntu.bin bs=512 count=1

B、在Windows中需要藉助工具,我這裏用的是WinHex16.6綠色版。(由於在Win下沒有進入ubuntu的系統製作的bin文件準確率高)
         下載WinHex,打開WinHex,點擊Tools->Open Disk,選擇Physical Media中的硬盤,OK。選中Ubuntu分區,點擊Edit->Copy Sector->Into New File,保存到C盤根目錄,文件名 Ubuntu.bin

 3、添加啓動項,並且獲得GUID號
     用Win7的安裝光盤啓動電腦,選擇“修復計算機”,進入“故障修復臺”。然後Shift+F10調出命令模式。或者進入Win7系統中,
管理員身份運行win7自帶的“命令行提示符”,進入後,當前目錄應該是“c:\windows\system32”
  A、添加Ubuntu啓動項
          bcdedit /create /d “Ubuntu 12.04″ /application bootsector
       此時會返回一個{GUID}號,例如{a97c0b74-ec35-11e1-b2db-f26baba90706}之類的,把你的那個複製下來,以下的{GUID}就用 這個代替
   B、 bcdedit /set {GUID} device partition=C:  (如果操作無法成功,見2-2-B修復辦法)
   C、 bcdedit /set {GUID} path \Ubuntu.bin
   D、 bcdedit /displayorder {GUID} /addlast
     至此就可以了,開機你就會發現多出了Ubuntu 12.04的開機菜單了,選擇進入可以看到熟悉的grub引導菜單了,在grub引導菜單裏面 還會有一個windows X Loder的選項,選擇可以返回win7引導菜單。如果你也是選擇的Windows引導Ubuntu的話,以上算是一種很完美的了。

二、NT6引導菜單出現錯誤後的修復

1、開機後沒有NT6引導菜單,或無法進入Win7系統
     用win7光盤啓動系統,並且進入到“故障修復臺”,然後Shift+F10調出命令模式。
     bootrec /fixmbr
(/fixmbr修復mbr, /FixBoot修復啓動扇區,/ScanOs檢測已安裝的win7,/RebuildBc
d重建bcd)

2、Grub2菜單消失,重新安裝在根分區
    Grub菜單應該是在NT6菜單中選擇了Ubuntu系統後出現的多選項菜單,Grub菜單消失後需要修復,重新安裝在根分區 /上,而不是安裝在sda上。
    sudo -i
    mount /dev/sda5 /mnt
    grub-install --force --root-director=/mnt /dev/sda5

3、刪除或重建NT6的引導菜單
  A、查看NT6的引導菜單      bcdedit /enum
  B、刪除NT6的引導菜單      bcdedit /delete {GUID} /cleanup 
    在實際操作中發現,每次建立引導菜單時,通過/create 返回的GUID號會有細微差別,即GUID號第一個字段的最後一個數字,每create一次就加1。{a97c0b74…}中的4會每次加1,我從最開始的4到現在的9了。不過這個無關緊要。但是在刪除引導菜單的時候,應該嘗試多刪除一些可能生成的多餘GUID號,否則就會造成後面的bcdedit /set {GUID} device partition=C: 命令無法執行。

4、NT6菜單引導Grub的多選項菜單出現grub rescue錯誤的修復
     正常情況下NT6菜單中的ubuntu選定並回車以後會出現Grub的多選項菜單,然後選擇第一項進入ubuntu系統。但是引導錯誤可能會出現在2個菜單之間,即NT6引導ubuntu後,出現“grub rescue>”提示,
無法找到Grub菜單進入系統。
    故障在於之前製作的"ubuntu.bin"文件不正確,需要重新提取分區的512字節信息。
   如何在
“grub rescue>”下通過命令,手動調用Grub菜單,將擬文詳細說明。

三、補充用EasyBCD軟件添加引導的方法
   先下載easybcd最新版本,下載完成並安裝後運行之(如下圖),先點【Add New Entry】,然後【Linux/BSD】,再然後在Type項點下拉菜單選中【GRUB 2】,最後是點【Add Entry】添加Ubuntu 12.04的菜單。

說明:Name項目裏面是可以自己填寫的!

 添加完啓動菜單後,基本已經完成了,如果你還要調整一下菜單的啓動順序就繼續往下看,點【Edit Boot Menu】設置啓動菜單,然後在【Default】默認啓動項上選擇你要設置爲默認啓動的系統菜單。另外,還可以通過【Up】和【Down】鍵來調整系統菜單的順位。第3點就是設置默認系統啓動時間,完了再點【Save Settings】保存退出。  

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章