Restore Hyper-V VM with checkpoints after PC crush

Recently one story had happened to me: my PC had crushed and all my Hyper-V VMs are gone. Annoying when the project is important and dead line is in 4 days. The complication of restore process is that my VMs had also checkpoint created and restore had to be done with checkpoints as the state of the VM was in them. Otherwise, attach the VHD(x) disk to new created VM is enough.

After difficult and interesting post searches here are some tips for you how be able minimally to restore your VMs before crush state.

Note, that this method was only tested on my side and some additional configuration steps were required to restore VM to initial (before crush) state. Generally, these are steps to reproduce which were done after checkpoint was created. Consider this as the restore state of the checkpoint! So all changes’ve been done after checkpoint was created are lost when restore with this method!
Another important note! You should have all your VM files:

  • .vhd(x)
  • .avhd(x)

You are no required to have VM definition files itself as you well create (import) VM configuration with the new state and IDs!


Firstly, you should check if the state of all you files is good and the chain of disks is not lost. To do this:

  1. Go to Hyper-V manager and inspect the disk which was crushed
  2. To do this:
    • Go to Hyper-V manager
    • Click “Inspect disk”
    • Select “.avhd(x)” disk of the last(!) checkpoint. You can order by last edit date.
      • If the check shows “information” only, this means that the the chain is not broken. In this case there is “check (show) parent” button shown…
      • In case there is “Repair” button shown, you should repair the chain which was broken. (Note, that in my case there was no broken links between parent and checkpoint files as after some important PC crushes I’m storing VMs on several HDDs as export files (Hyper-V manager – > Export option) and working files (holding VM files on other than OS disk)) so the process of repair was not required for me.
    • Import previous exported VM (in my case -> so this holds configuration of your VMs) or create new VM. Do not attach disk or copy disk to TEMP folder when import and remove this one after VM definition is restored / created.
    • Rename the last checkpoint “avhd(x)” file to vhd(x). This will have “Name of the VM_GUID.avhd(x)” format. To ease the process order by modified date.
    • Attach “the renamed” file to created/imported VM.
    • This should start normally without any problems.
  3. Do this for all requried VMs
  4. Reconfigure VMs as needed
  5. Do not forget to export new configured VM somewhere. This will help to stay updated when PC new crushes
  6. Enjoy
Note, that all your files should stay without any changes: this means original VHD(x) file also as original check point files (all avhd(x) files) previously created should not be removed after VM is launched as these disks are differencing disks and required to run OS.


Hope this helps,

Andrew Adamich

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: