To be honest, I am surprised that I have not blogged about this before, but today I would like to talk about how virtual machine files are placed on the hard disk. Virtual Machine filesThe first thing to know is what files are used to create a virtual machine: * .XML files
o These files contain the virtual machine configuration details. There is one of these for each virtual machine and each snapshot of a virtual machine. They are always named with the GUID used to internally identify the virtual machine or snapshot in question.
* .BIN files
o This file contains the memory of a virtual machine or snapshot that is in a saved state.
* .VSV files
o This file contains the saved state from the devices associated with the virtual machine.
* .VHD files
o These are the virtual hard disk files for the virtual machine
* .AVHD files
o These are the differencing disk files used for virtual machine snapshotsUnderstanding data roots Hyper-V has a concept of the “virtual machine data root” and the “virtual machine snapshot root”. These are the locations where the virtual machine configuration (.XML) and saved state (.BIN & .VSV) files are stored. For example – a virtual machine which had a virtual machine data root of “D:\Foo” and a snapshot data root of “D:\Foo” and had two snapshots would have a file structure like this: D:\Foo
D:\Foo\Snapshots
D:\Foo\Snapshots\[Snapshot #1 GUID directory]
D:\Foo\Snapshots\[Snapshot #1 GUID].XML
D:\Foo\Snapshots\[Snapshot #2 GUID directory]
D:\Foo\Snapshots\[Snapshot #2 GUID].XML
D:\Foo\Virtual Machines
D:\Foo\Virtual Machines\[Virtual Machine GUID directory]
D:\Foo\Virtual Machines\[Virtual Machine GUID].XMLRead more: Virtual PC Guy's Blog
o These files contain the virtual machine configuration details. There is one of these for each virtual machine and each snapshot of a virtual machine. They are always named with the GUID used to internally identify the virtual machine or snapshot in question.
* .BIN files
o This file contains the memory of a virtual machine or snapshot that is in a saved state.
* .VSV files
o This file contains the saved state from the devices associated with the virtual machine.
* .VHD files
o These are the virtual hard disk files for the virtual machine
* .AVHD files
o These are the differencing disk files used for virtual machine snapshotsUnderstanding data roots Hyper-V has a concept of the “virtual machine data root” and the “virtual machine snapshot root”. These are the locations where the virtual machine configuration (.XML) and saved state (.BIN & .VSV) files are stored. For example – a virtual machine which had a virtual machine data root of “D:\Foo” and a snapshot data root of “D:\Foo” and had two snapshots would have a file structure like this: D:\Foo
D:\Foo\Snapshots
D:\Foo\Snapshots\[Snapshot #1 GUID directory]
D:\Foo\Snapshots\[Snapshot #1 GUID].XML
D:\Foo\Snapshots\[Snapshot #2 GUID directory]
D:\Foo\Snapshots\[Snapshot #2 GUID].XML
D:\Foo\Virtual Machines
D:\Foo\Virtual Machines\[Virtual Machine GUID directory]
D:\Foo\Virtual Machines\[Virtual Machine GUID].XMLRead more: Virtual PC Guy's Blog