Cover Image

Feilmelding når man flytter Hyper-V-diskfiler mellom VM'er

 Fri 2024-05-10    Hyper-V

Hyper-V virtuell maskin vil ikke starte og man får feilmelding 0x80070005: General access denied error

Når man oppretter en VM i Hyper-V får denne VM'en en unik GUID, og denne GUID'en blir tildelt eierskap over alle filer som tilhører VM'en. Dette fungerer fint og sikrer at de enkelte prosessene for VMene ikke kan aksessere andre VM'er sine diskfiler eller ressurser.

Jeg flytter av og til diskfiler mellom VM'er av forskjellige grunner, og får da feilmeldinger som denne:

Blur-o-matic av sikkerhetshensyn.

Dette fører jo til at VMen min ikke vil starte og alt er trist. Heldigvis finnes det en løsning:

Det som skjer i PowerShell-vinduet er i korte trekk dette:

  • Naviger til mappen der Hyper-V-VM'en bor
  • Vis innholdet i Virtual Hard Disks og Virtual Machines (for å se filnavn og GUID for VMen)
  • Kjør kommandoen icacls for å tildele NT VIRTUAL MACHINE-brukeren for VMen fulle rettigheter til den nyankomne diskfilen.

Copypaste-able icacls-kommando:

icacls ".\Virtual Hard Disks\VMDiskFile.vhdx" /grant '"NT VIRTUAL MACHINE\2BCD01D9-227F-4474-BCB8-747D40F786EB":(F)'
processed file: .\Virtual Hard Disks\VMDiskFile.vhdx

Plasseringen av VM'er og diskfiler vil sannsynligvis variere mellom systemer, så de får leseren skrive inn selv for sitt system. Husk å endre GUID i icacls-kommandoen for din VM.

Referanse: https://learn.microsoft.com/en-us/troubleshoot/windows-server/virtualization/hyper-v-virtual-machine-not-start-0x80070005