How to backup and restore a running KVM guest on the command line
If you need to update the software:
wget http://resources.ovirt.org/pub/yum-repo/ovirt-release36.rpm yum localinstall ovirt-release36.rpm yum update -y
Backup the VM:
Assuming a guest called “test”, list location of VM:
virsh domblklist test
Export the XML data that defines the VM:
virsh dumpxml test > test.xml
Take the snapshot:
virsh snapshot-create-as --domain test NAME_OF_SNAPSHOT --diskspec vda,file=/tmp/snapshot_test.qcow2 --disk-only --atomic --no-metadata
Guest is now running in /tmp/snapshot_test.qcow2
Copy XML and original data file to where you need it.
Pivot back to original:
virsh blockcommit test vda --active --verbose --pivot
Restore the VM:
Copy the .qcow2 file into place.
Creating a new vm:
virsh define /path/to/your/xml/test.xml
Check it is present:
virsh list --all
Start the vm:
virsh start test