On Tue, 2017-03-28 at 12:38 -0500, Robert Nichols wrote:
> > What you have is not a snapshot. A snapshot is created
with "qemu-img snapshot -c <snapshot-name> <imagename>", and that is
_not_ a separate file. That "<snapshot-name>" is not a file name but just
a tag to identify one of possibly several snapshots within that
"<imagename>" file.
>
> I did create it with the above line. Clearly I didn't understand where
> it was, or perhaps I inadvertently deleted it.
That output from "qemu-img info ..." says otherwise. That
/var/lib/libvirt/images/Windows10.qcow2 file was created with "qemu-img create -b
/home/poc/Win10/win10.qcow2 /var/lib/libvirt/images/Windows10.qcow2". There is no
other way that "backing file: /home/poc/Win10/win10.qcow2" could appear in the
output.
I can only say I have no recollection of typing that, and that I did
want to create a snapshot as a test. But it was a few days ago so I may
be wrong.
In order for the .../Windows10.qcow2 file to be valid, that backing
file _must_ exist and be unchanged since that new file was created.
OK, though I can't guarantee it hasn't changed since I did run the VM
afterwards.
> Currently 'qemu-img snapshot -l <filename>' gives
no output, so it
> looks like it's gone assuming it was ever there.
There should not be any output. You simply do not have anything that qemu-img calls a
"snapshot".
> (BTW the "no such file or directory" message could not be less
> helpful).
Agreed, 100%.
> > What you made was a copy-on-write image using /home/poc/Win10/win10.qcow2 as a
backing file. You can make changes in /var/lib/libvirt/images/Windows10.qcow2 and not
affect the backing file, but the backing file _must_not_be_changed_ during the lifetime of
that dependent image. That c-o-w image cannot be restored to its original state. The way
you do that is to throw it away and create a new one with the same backing file.
>
> I'm going to try to attach it to another Windows instance to see if it
> can be repaired. Otherwise, it looks like I'm screwed.
That backing file _must_ exist, or else you have nothing. If the backing file exists, but
has changed, then the only valid image is what is currently in the backing file. If an
unchanged backing file exists, you have the option to (a) throw away that
/var/lib/libvirt/images/Windows10.qcow2 file and create it anew from that backing file, or
(b) merge the changes that have been made in the /var/lib/libvirt/images/Windows10.qcow2
file back into the backing file. You do the latter with "qemu-img commit
/var/lib/libvirt/images/Windows10.qcow2".
OK, I'll look into that.
Thanks again.
poc