Prerequisites for teleporting a VM from one machine (the source machine) to another machine (the target machine):
- fairly identical CPUs; cross CPU brand teleporting will be enabled later on
- identical VMs on both machines; if you use disk images, then they must be located on a shared network location
- VBoxManage modifyvm "Target VM name" --teleporterenabled on -- teleporterport port_nr
You can initiate the teleport with VBoxManage as well: (start the VM first)
- VBoxManage controlvm "Source VM name" teleport --hostname host_name_or_IP --port port_nr
Let's start with a very basic sample:
- Create the source VM called "Linux Source" without any hard disk image and with an attached bootable ISO image (e.g. Damn Small Linux)
- Create the target VM called "Linux Target" with the same settings (bootable ISO image attached as well)
- VirtualBox -startvm "Linux Source"
Enable teleporting and start the target VM:
- VBoxManage modifyvm "Linux Target" --teleporterenabled on --teleporterport 6000
- VirtualBox -startvm "Linux Target"
To initiate teleporting do the following:
- VBoxManage controlvm "Linux Source" teleport --hostname localhost --port 6000
Now (quickly) see the source VM migrate to the target VM.
To teleport a VM between two computers you just exchange localhost for the IP or name of the target machine.