bcdboot
修復系統分區啟動環境的工具
BCDboot 是一種用於快速設置系統分區或修復系統分區上的啟動環境的工具。系統分區是通過從已安裝的 Windows(R) 映像複製一小部分啟動環境文件來設置的。BCDboot 還會在系統分區上創建引導配置數據 (BCD) 存儲,該存儲中包含一個新的引導項,可讓您引導到已安裝的 Windows 映像。
可以從 Windows(R) PE 運行 BCDboot。有關 Windows PE 的信息,請參閱 Windows PE 操作實例。
BCDboot 包含在 Windows 7、 Windows 8和 Windows Server 2008 R2 、Windows Server 2012的 %WINDIR%\System32 文件夾內。Windows OEM 預安裝工具包 (OPK) 和 Windows 自動安裝工具包 (AIK) 也提供了 BCDboot,位置在 %Program Files%\\Tools 目錄下,其中 是 Windows OPK 或 Windows AIK。
BCDboot 從計算機上已有的 Windows 映像複製一套啟動環境文件。BCDboot 可以從 Windows Vista、Windows Server 2008、Windows 7 、Windows 8或 Windows Server 2008 R2 的映像複製啟動環境文件。有關將 Windows 映像應用於系統的信息,請參閱捕獲和應用 Windows 映像。
BCDboot 使用%WINDIR%\System32\Config\BCD-Template 文件在系統分區上創建新的 BCD 存儲並初始化 BCD 啟動環境文件。可以在 BCD-Template 文件中定義特定的 BCD 設置。該工具還將最新版本的啟動環境文件從操作系統映像 %WINDIR%\boot 文件夾和 %WINDIR%\System32 文件夾複製到系統分區中。
BCDboot 將文件複製到固件所標識的默認系統分區。您可以使用分區工具(例如 DiskPart)創建此分區。不必為了便於 BCDboot 查找而指定此分區的驅動器號。
在基於 BIOS 的系統上,系統分區是使用主引導記錄 (MBR) 磁碟格式的磁碟上的活動分區。BCDboot 會在系統分區上創建 \Boot 目錄,並將所有需要的引導環境文件都複製到此目錄中。
在基於統一可擴展固件介面 (UEFI) 的系統上,EFI 系統分區是使用 GUID 分區表 (GPT) 磁碟格式的磁碟上的系統分區。BCDboot 會創建 \Efi\Microsoft\Boot 目錄,並將所有需要的引導環境文件都複製到此目錄中。 BCDboot 可以將現有的啟動環境更新到系統分區。Windows 映像中較新的文件版本會複製到系統分區中。
如果系統分區中已存在 BCD 存儲,則:
BCDboot 將根據 BCD-Template 文件中的設置,在現有的 BCD 存儲中創建一個新啟動項,並刪除引用同一個 Windows 映像的所有重複的啟動項。如果已存在 Windows 映像的啟動項,並且除了默認值以外還對該啟動項啟用了其他 BCD 設置,則下次運行 BCDboot 時,可使用 /m 選項將 OS 載入程序 GUID 所標識的現有啟動項合併到 BCDboot 創建的新啟動項,以此來保留這些設置。
下列命令行選項可用於 BCDboot.exe。
BCDBOOTsource [ /llocale] [ /svolume-letter] [ /v] [ /m [{OS Loader GUID}]]
選項 | 描述 |
source | 指定作為源的 Windows 目錄的位置,將從該目錄中複製啟動環境文件。 |
/l | 可選。指定區域設置。默認值為美國英語。 |
/s | 可選。指定系統分區的卷號。默認值是固件所標識的系統分區。 |
/v | 可選。啟用詳細模式。 |
/m | 可選。默認情況下,僅合併全局對象。 如果指定了 OS Loader GUID,則合併系統模板中給定的載入程序對象以生成可啟動項。 |
此示例使用 C: 卷上安裝的操作系統映像中的文件來初始化系統分區。
bcdboot C:\Windows
此示例將默認 BCD 區域設置設為簡體中文,並將 BCD 文件複製到已使用 DiskPart 分配了卷號 S: 的系統分區。
bcdboot C:\Windows /l zh-cn /s S:
此示例將當前 BCD 存儲中由給定 GUID 標識的操作系統載入程序合併到新的 BCD 存儲中。
bcdboot c:\windows /m {d58d10c6-df53-11dc-878f-00064f4f4e08}
【注】
需要文件:System32\bcdboot.exe,System32\bootstr.dll.mui,System32\config\BCD-Template
需要文件夾:boot
bcdboot.exe與bcdedit.exe的功能差不多,
都是針對BCD(boot configuration data)這個文件進行創建和修改,
只是前者多了"複製關鍵引導文件(bootmgr文件和boot文件夾)"的功能,
而後者可以一條一條地修改BCD中的參數,詳細而複雜。
添加多系統啟動菜單,完全可以只用bcdboot就可以實現。
下面以更通俗更準確的語言詳解bcdboot.exe的幫助文檔。
Bcdboot —— Bcd引導文件創建和修復工具。
bcdboot.exe 命令行工具用於複製關鍵引導文件到系統活動分區(如那個100M系統保留分區)和創建新的系統BCD啟動項。
bcdboot
source 指定windows系統根目錄的位置,用來指定引導文件的來源。
/l 指定一個語言參數,如不指定則默認為en-us(美國英語)。這些可以在boot文件夾中找到,只不過是隱藏屬性。
/s 指定一個盤符,用於指定複製引導文件到哪裡。默認為本硬碟的活動分區。
/v 啟用詳細模式。
/m 如果提供了在BCD中已存在的GUID,則此選項可以將複製來的新數據與已存在數據合併,即新數據中沒有的其他BCD設置都保留。一般地,沒有該參數時,將替換與原GUID有關的全部啟動項數據。
示例:
將c盤的系統啟動項標識為美國英語 bcdboot c:\windows /l en-us
將c盤系統的引導文件複製到h盤 bcdboot c:\windows /s h:
將c盤的啟動數據覆蓋到一個已存在的啟動項
bcdboot c:\windows /m {d58d10c6-df53-11dc-878f-00064f4f4e08}