Problem description
When attempting to back up a Virtual Machine or manually create a checkpoint in a Microsoft Hyper-V environment, the process fails. This typically occurs because the Hyper-V Virtual Machine Management service cannot write the necessary temporary metadata or storage files to the designated disk location.
Scenario to Reproduce:
Open Hyper-V Manager.
Right-click on a running Virtual Machine.
Select Checkpoint.
The operation fails with a popup error or a task failure notification.
Cause
The issue is primarily driven by environment-level restrictions rather than the backup software itself. Common causes include:
Permission Mismatch: The Virtual Machine folder or the specific Virtual Hard Disk (VHD) folder lacks permissions for the "Virtual Machines" identity or the local "System" account.
Insufficient Disk Space: The host drive lacks the required overhead to create the .avhdx (differencing disk) file.
Existing Metadata Conflicts: Corrupt or "hanging" existing checkpoints are preventing the creation of new recovery points.
Traceback
The error logs, typically found in the Hyper-V-VMMS Administrative logs or backup software logs, will display the following:
Error Code: HYPERV38
Status: Failed
Message: General access denied error (0x80070005).
Cannot create the storage required for the checkpoint location for 'VM-Name'.
Virtual machine failed to generate checkpoint. (Virtual machine ID <GUID>)
Resolution
1. Verify Permissions and Storage
Check Disk Space: Ensure the destination drive (e.g., D:\ or CSV) has at least 10-15% free space. Checkpoints can expand rapidly depending on disk activity.
Grant Permissions: * Navigate to the folder containing the VM files.
Right-click > Properties > Security.
Ensure NT VIRTUAL MACHINE\Virtual Machines and SYSTEM have Full Control.
2. Clear Existing States
Remove Checkpoints: In Hyper-V Manager, right-click the VM and select Delete Checkpoint Subtree to clear any stale snapshots.
Toggle Checkpoint Settings: 1. Right-click VM > Settings.
2. Under Checkpoints, uncheck Enable Checkpoints, click Apply.
3. Re-check Enable Checkpoints and click OK to refresh the configuration.
3. Isolated Environment Test (PowerShell)
To confirm if the issue is a Hyper-V system failure, run a manual test outside of any third-party software:
Open PowerShell as Administrator.
Run the following command:
Checkpoint-VM -Name "Your-VM-Name"If this fails with the same 0x80070005 error, the issue is confirmed to be at the OS/Hypervisor level.
Include and exclude filters
Include: Ensure the VM configuration file path and the VHDX paths are included in any security software "Allow" lists (e.g., Antivirus exclusions).
Exclude: Exclude .avhdx, .vhdx, and .mrt/.vrs files from real-time background virus scanning, as this often causes "Access Denied" locking issues during checkpoint creation.
Verification
To verify the fix:
Run the PowerShell command Get-VMSnapshot -VMName "Your-VM-Name".
If a new snapshot appears in the list without an error, the resolution was successful.
Trigger a manual backup via your backup console to ensure the integration components are communicating correctly.