Hyper-V 虛擬機可能無法啟動,而且您收到錯誤0x80070005:拒絕一般存取錯誤

本文可協助修正 Hyper-V 虛擬機無法啟動時所發生的錯誤0x80070005。

適用:Windows Server 2012 R2
原始 KB 編號: 2249906

徵狀

Hyper-V 虛擬機可能無法啟動,而且您會收到類似下列的錯誤訊息:

嘗試啟動選取的虛擬機 () 時發生錯誤。

'VMName' 無法啟動。

Microsoft 仿真 IDE 控制器 (實例標識符 {83F8638B-8DCA-4152-9EDA-2CA8B33039B4}) :無法開啟,錯誤為「一般存取遭拒錯誤」

IDE/ATAPI 帳戶沒有足夠的許可權可開啟附件 'E:\VM\VMName\Disk0.vhd。 錯誤:「一般存取遭拒錯誤」

帳戶沒有足夠的許可權可開啟附件 'E:\VM\VMName\Disk0.vhd。 錯誤:「一般存取遭拒錯誤」

如果您按下訊息視窗中的 [查看詳細 資料],則會顯示下列資訊:

'VMName' 無法啟動。 (虛擬機標識碼 5FC5C385-BD98-451F-B3F3-1E50E06EE663)

'VMName' Microsoft 模擬 IDE 控制器 (實例標識符 {83F8638B-8DCA-4152-9EDA-2CA8B33039B4}) :無法開啟, (0x80070005) 發生錯誤「一般存取遭拒錯誤」。 (虛擬機標識碼 5FC5C385-BD98-451F-B3F3-1E50E06EE663)

'VMName': IDE/ATAPI 帳戶沒有足夠的許可權可開啟附件 'E:\VMs\VMName\Disk0.vhd。 錯誤: (0x80070005) 「一般存取遭拒錯誤」。 (虛擬機標識碼 5FC5C385-BD98-451F-B3F3-1E50E06EE663)

'VMName': 帳戶沒有足夠的許可權可開啟附件 'E:\VM\VMName\Disk0.vhd。 錯誤: (0x80070005) 「一般存取遭拒錯誤」。 (虛擬機標識碼 5FC5C385-BD98-451F-B3F3-1E50E06EE663)

注意事項

  • 此錯誤訊息會參考 Microsoft 模擬 IDE 控制器或綜合 SCSI 控制器。
  • 此錯誤訊息會參考虛擬硬碟 (.vhd) 檔案或快照集檔案 (.avhd) 。
  • 虛擬機標識元對每部虛擬機都是唯一的。

原因

如果虛擬硬碟 (.vhd) 檔案或快照集檔案 (.avhd) 的許可權不正確,就會發生此問題。

每個 Hyper-V 虛擬機都有唯一的虛擬機標識碼 (SID) 。 如果 .vhd 或 .avhd 檔案上的安全性許可權遺失虛擬機 SID,則虛擬機不會啟動,而且您會在 [徵兆] 區段中 提及的 [一般存取遭拒錯誤) 0x80070005 (收到错误。

解決方案

若要解決此問題,請將虛擬機 SID 新增至虛擬硬碟 (.vhd) 檔案或快照集檔案 (.avhd) 。

若要將虛擬機 SID 新增至 .vhd 或 .avhd 檔案,請遵循下列步驟:

  1. 請注意錯誤中所列的虛擬機標識碼,0x80070005 (一般存取遭拒错误) 。

    例如,請考慮下列錯誤訊息:

    'VMName': IDE/ATAPI 帳戶沒有足夠的許可權可開啟附件 'E:\VMs\VMName\Disk0.vhd。 錯誤: (0x80070005) 「一般存取遭拒錯誤」。 (虛擬機標識碼 5FC5C385-BD98-451F-B3F3-1E50E06EE663)

    在此範例中,虛擬機標識碼是 5FC5C385-BD98-451F-B3F3-1E50E06EE663。

  2. 開啟提高權限的命令提示字元。

  3. 若要讓虛擬機標識碼 (SID) .vhd 或 .avhd 檔案的存取權,請輸入下列命令,然後按 Enter:

    icacls <Path of .vhd or .avhd file> /grant "NT VIRTUAL MACHINE\ <Virtual Machine ID from step 1> ":(F)
    

    例如,若要使用您在步驟 1 中記下的虛擬機標識碼,請輸入下列命令,然後按 Enter:

    icacls "E:\VMs\VMName\Disk0.vhd" /grant "NT VIRTUAL MACHINE\5FC5C385-BD98-451F-B3F3-1E50E06EE663":(F)
    
  4. 啟動虛擬機。

其他相關資訊

如果 Hyper-V 虛擬機設定檔 (.xml 檔案) 的許可權不正確,則虛擬機無法啟動,並傳回下列錯誤訊息:

「未命名的 VM」無法初始化。

嘗試讀取或更新虛擬機設定失敗,因為存取遭到拒絕。

如果您按下訊息視窗中的 [查看詳細 資料],則會顯示下列錯誤訊息:

「未命名的 VM」無法初始化。 (虛擬機 7E77503A-A26B-4BB5-9846-396F49A30141)

「未命名的 VM」無法讀取或更新虛擬機設定,因為存取遭到拒絕:一般存取遭拒錯誤 (0×80070005) 。 檢查儲存虛擬機之資料夾上的安全性設定。 (虛擬機 7E77503A-A26B-4BB5-9846-396F49A30141)

若要解決此問題,請執行一節中的步驟,將虛擬機 SID 新增至 .xml 檔案。 例如,執行下列命令:

icacls "E:\VMs\VMName\7E77503A-A26B-4BB5-9846-396F49A30141.xml" /grant "NT VIRTUAL MACHINE\7E77503A-A26B-4BB5-9846-396F49A30141":(F)

參考資料

如需 Hyper-V 的詳細資訊,請參閱 Hyper-V