如果因為磁碟空間不夠,而用先 copy 再 delete 的方式移動了 MS Hyper-V VM 檔案到別的地方的話,再下次啟動 VM 時就會遇到權限不足存取被拒的錯誤訊息(0x80070005)。

病灶:MS Hyper-V VM 包含兩個檔案,一個是 .xml 的組態設定檔,另一個是 .vhd 的虛擬磁碟(如果使用虛擬磁碟)檔,這兩個檔案的 security 權限都需要包含該 VM 自己才行(每個 VM 都會有一組自己的 unique SID,需要把這個分屬於 NT VIRTUAL MACHINE 底下的這台虛擬機器的 SID 加入檔案 security permission 中)

解法:

1) 開啟 Administrator 權限的 cmd.exe,並輸入:
C:\>icacls <Path of .vhd file> /grant "NT VIRTUAL MACHINE\<Virtual Machine ID from message> ":F
C:\>icacls <Path of .xml file> /grant "NT VIRTUAL MACHINE\<Virtual Machine ID from message> ":F

2) 確認指令執行後顯示執行成功,即可啟動 VM。

 

參考資料:
https://blog.pmail.idv.tw/?p=13674
https://docs.microsoft.com/zh-tw/troubleshoot/windows-server/virtualization/hyper-v-virtual-machine-not-start-0x80070005

 

arrow
arrow
    全站熱搜

    origin2 發表在 痞客邦 留言(0) 人氣()