I am using KVM, and use/manage my VMs with virt-manager. But I asked myself this question: how can create or revert some snapshot?
I'm giving examples for qcow2 disk images and commands are made with virsh.
Internal Disk Snapshots#
You can list available VM with virsh in order to know their name:
$ virsh list
Then you can check if there already is existing shapshots for this VM:
$ virsh snapshot-list vmname
Next there is two possibilities to make a snapshot:
- create a XML snapshot description file to specify the name and description of the snapshot
- or let libvirt choose a name and no description
The XML snapshot description file must look like the following:
Make a snapshot with an XML file:
$ virsh snapshot-create vmname /path/to/description.xml
Or make a snapshot without description file:
$ virsh snapshot-create vmname
Note: this is much more faster to make a snapshot while the VM is stoped. But it's also possible to make a snapshot while the VM is running even if it's more slow.
If you want to see some information about the VM and snapshots you can run:
$ qemu-img info /path/to/disk/image/vmname.qcow2
To revert the VM to a snapshot, for example run:
$ virsh snapshot-revert vmname vmname-snapshot1