This utility is meant to work on Hyper-V RTM only.
It has NOT been tested heavily on Hyper-V for Windows Server 2008 SP2 nor Windows Server 2008 Hyper-V R2.
This tool was originally published here :
http://www.jaylee.org/page/Hyper-V-Virtual-Machine-Mover.aspxThis utility can also work remotely, particularly with Hyper-V Server 2008.
Here is a list of facts to know before using this tool :
- A VM can only be detached if it is in the "Saved" or "Stopped" state.
- It is not necessary to stop the Hyper-V service and all modifications are detected live by the service.
- A VM can only be imported if it contains at least on HDD on the IDE 0 controller.
- All the VM files must be under the same directory, HDD and snapshots.
- All files that are modified are backed-up next to the original files; All other files are not modified nor moved.
- .NET 3.5 must be installed.
- Both command line and GUI tools must run "as administrator".
- For remote operations, the current user must be an member of the administrators group of the remote system.
This utility comes in two flavors, a command line tool and an GUI.
The Command Line utility
The command line utility supports two commands. The first to detach a virtual machine :
vmmove d "my vm" "myserver"
The server parameter is optional. If omitted, the tool will perform the operation on the local machine.
Now to attach a VM :
vmmove a "C:\Hyper-V\MyVM" "myserver"
The server parameter is also optional here. The path specified is always considered as a local path for the target Hyper-V service even if it is a remote machine.
The GUI Utility
The GUI utility allows to perform both attach and detach operations visually, but only on the local machine. Remote operations may be added in a future version of the tool.