I have used
virsh snapshot-create-as <VM name> <snapshot name> "<snapshot description>" --diskspec "vda,snapshot=external,file=/path/to/external-snapshot" --disk-only --atomic
to create an external snapshot of a running VM. I followed it with
virsh blockpull <VM name> --path /path/to/external-snapshot
and monitored it until done. I confirmed it with
qemu-img info /path/to/external-snapshot
which shows no backing store.
However, when I do
grep {/etc,/run}/libvirt/qemu/<VM name>.xml
the xml for the VM still shows a backing store in the /run/... definition (but not in the /etc/... definition, my understanding is that the /etc/... definition won't be updated until the VM is shut down):
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source
file='/var/lib/libvirt/images/external-snapshot.qcow2'/>
<backingStore type='file' index='1'>
<format type='qcow2'/>
<source
file='/var/lib/libvirt/images/original-image-file.qcow'/>
<backingStore/>
</backingStore>
<target dev='hda' bus='ide'/>
<alias name='ide0-0-0'/>
<address type='drive' controller='0' bus='0' target='0'
unit='0'/>
</disk>
This is using libvirtd version 1.3.1 and qemu-img version 2.5.0.
How do I resolve this situation? I don't want to have to rely on
a backing store permanently. Thanks for any help or pointers.