Windows

我無法啟動從物理驅動器創建的 VHDX

  • April 22, 2019

我需要將我的 Server 2012 R2 Fileserver(物理)遷移到另一台伺服器(虛擬)。這就是為什麼我需要創建 VHDX 文件以便稍後在 Hyper-V 中執行它們

我所有的驅動器都沒有問題,除了 C 驅動器。

每當我啟動創建的 C 驅動器時,我都會收到此錯誤:

錯誤螢幕截圖 Hyper-V

如果我只是在我的文件系統或任何伺服器上打開 VHDX,我會收到以下錯誤消息you need to format the F: Drive before you can use it

錯誤 F:驅動器

如您所見,VHDX 奇怪地包含 2 個驅動器,其中一個 (F:) 未格式化。這就是為什麼我不能使用 VHDX 文件的原因,因為我猜它無法辨識這個驅動器。我想這就是 EFI 所在的地方。

我嘗試以 3 種不同的方式創建 VHDX。對於前兩種方法,我嘗試了 Disk2VHD

像這樣(我嘗試了有\\?\volume和沒有\\?\volume分區):

Disk2VHD 截圖

我嘗試的第三種方法是直接從 Hyper-V 中,我可以說我想從物理驅動器創建 VHDX。

Hyper-V 嚮導

但它們都得到相同的最終結果,即損壞的 VHDX。

我在某處讀到我需要mountvol x: /s首先使我的 EFI 分區對 disk2vhd 可見,但mountvol似乎/s不再有?

如何獲得工作的 VHDX?謝謝

我建議bootrec /fixbootbootrec /rebuildbcd在連接磁碟的情況下啟動虛擬機,但在您的情況下為我的提示寫更多內容,因為我看到您的 C 驅動器實際上是 E 驅動器,bcdedit請也檢查一下;

從正確的 Microsoft Windows 安裝介質(正確的體系結構和作業系統版本)引導虛擬機。選擇適當的鍵盤佈局和語言選項,然後點擊Next。點擊修復您的電腦。選擇要修復的作業系統,點擊Next。點擊開始 > 執行,鍵入 cmd 並點擊OK。鍵入bcdedit並按 Enter。在標識符設置為 的 Windows 啟動管理器標題下{bootmgr},您可能會看到設備已設置為啟動。同樣,在標識符設置為 的 Windows Boot Loader 下{default},您可能會看到 device 和 osdevice 設置為啟動。應根據您的環境正確設置這些項目。通常這些顯示為partition=C:. 在某些情況下,{default}標識符可能會將它們設置為partition=E:.

執行以下命令以更正配置:

注意bcdedit位於此路徑:c:\windows\system32.

bcdedit /set {bootmgr} device partition=C:

bcdedit /set {default} device partition=C:

bcdedit /set {default} osdevice partition=C:

在命令提示符下鍵入 exit 並選擇 Shutdown。重新配置現在應該成功完成。如果再次失敗,請重複步驟 1 到 7,然後執行這些命令將預設設備設置為partition=E:

bcdedit /set {bootmgr} device partition=C:

bcdedit /set {default} device partition=E:

bcdedit /set {default} osdevice partition=E:

引用自:https://serverfault.com/questions/904603