歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 直接用bcdedit創建bootmgr數據庫和修復啟動菜單

直接用bcdedit創建bootmgr數據庫和修復啟動菜單

日期:2017/2/28 14:38:38   编辑:Linux教程

直接用bcdedit創建bootmgr數據庫和修復啟動菜單

使用下面方法之前需要bcdedit和bootsect兩條命令,這兩條命令可以到vista或者windows 7安裝光盤上獲得。bootsect.exe文件在vista和windows 7的安裝光盤的boot目錄下,而bcdedit.exe文件可以在安裝了vista系統或者windows 7系統的電腦上的%windir%\system32目錄下獲得,當然也可以使用imagex命令掛載vista或者windows 7安裝光盤裡source\install.wim文件,然後到windows\system32下也能找到bcdedit命令。至於imagex命令可以到微軟官方下載WAIK工具包。


1、創建BCD數據庫

將安裝光盤上的boot文件夾和bootmgr文件一起復制到c盤,然後刪除C:\Boot\bcd文件。配置 BCD 存儲在此步驟中,使用 BCDEdit 新建名為 BCD 的啟動配置文件。BCD 替換 Boot.ini。BCDEdit 是旨在管理 BCD 存儲的命令行工具。Windows PE 和 Windows Vista 中都提供 BCDEdit。例如,進入bcdedit所在目錄執行如下命令:

Bcdedit /createstore c:\BCD

bcdedit /import c:\bcd

Bcdedit /create {bootmgr} /d "Boot Manager"

Bcdedit /set {bootmgr} device boot

bcdedit /set {bootmgr} locale en-US //可以不設置,默認為英文


2、添加Windows XP啟動菜單:

bcdedit /create {ntldr} /d " Windows XP Professional"

bcdedit /set {ntldr} path \ntldr

bcdedit /set {ntldr} device partition=c:

bcdedit /displayorder {ntldr} -addlast


3、添加Windows 7啟動菜單

Bcdedit /create /d " Windows 7 Ultimate " -application osloader

這條命令完後會返回一個GUID值,如:{faef23c1-6efe-11de-b779-b2c7bec45a2c}

The entry {uid} was successfully created.

接下來{uid}這個GUID值就表示是Windows 7的菜單項。

Bcdedit /set {uid} osdevice partition=E:

Bcdedit /set {uid} device partition=E:

Bcdedit /set {uid} path \windows\system32\winload.exe

Bcdedit /set {uid} systemroot \windows

Bcdedit/displayorder {uid} -addlast


4、添加PE 1.0啟動菜單

bcdedit /copy {ntldr} /d "Windows PE"

//The entry {uid} was successfully

bcdedit /set {uid} path \LDRXPE

bcdedit /set {uid} device partition=c:

bcdedit /displayorder {uid} -addlast


5、添加Ubuntu9.04啟動菜單

下載grub4dos軟件包,提取文件grldr 和grldr.mbr拷貝到C盤根目錄

bcdedit /create /d "GRUB MENU" /application bootsector #建立一個名稱為“GRUB MENU”,實模式啟動扇區的啟動項

生成{ID}復制下來

bcdedit /set {ID} device partition=c: #設置引導扇區文件所在的分區,grldr.mbr所在分區

bcdedit /set {ID} path \grldr.mbr #指定引導扇區文件的路徑和文件名

bcdedit /displayorder {ID} /addlast #增加這個Ubuntu的菜單項到末尾。

下面修改menu.lst,就行了。

附:我的Ubuntu9.04 menu.lst

title Ubuntu 9.04, kernel 2.6.28-12-generic

root ()/ubuntu/disks

kernel /boot/vmlinuz-2.6.28-12-generic root=UUID=2414A33A14A30DBC loop=/ubuntu/disks/root.disk ro quiet splash

initrd /boot/initrd.img-2.6.28-12-generic


6、設置默認的啟動條目和選擇時間

Bcdedit /default {uid}

bcdedit /timeout 7


7、修改啟動參數模式

bootsect /nt: (nt52是用ntldr方式啟動,即XP啟動菜單方式啟動;nt60則是使用VISTA新式的bootmgr啟動菜單。)

Copyright © Linux教程網 All Rights Reserved