----- On Feb 7, 2020, at 3:43 PM, Peter Krempa pkrempa@redhat.com wrote:
> On Fri, Feb 07, 2020 at 15:25:22 +0100, Lentes, Bernd wrote:
...>
> Libvirt is probably lacking the metadata for the snapshot. That is not a
> problem though, because since libvirt doesn't support deletion of
> external snapshots anyways currently you'd need to use the below
> approach anyways.
>
> virsh blockcommit crispor_1604 vda --active --pivot
>
> in the case above. that merges the
> file='/var/lib/libvirt/images/crispor_1604/crispor_1604.sn'/
> into file='/var/lib/libvirt/images/crispor_1604/crispor_1604.img'/
and
> finishes the job.
>
> If you have more complex backing chain you might want to use the --top
> and --base arguments to control which portion to merge as the command
> I've suggested merges everything into the bottom-most image.
Hi Peter,
i'm not lucky:
virsh help blockcommit does not know --active or --pivot.
virsh # help blockcommit
SYNOPSIS
blockcommit <domain> <path> [<bandwidth>] [<base>]
[--shallow] [<top>] [--delete] [--wait] [--verbose] [--timeout
<number>] [--async]
OPTIONS
[--domain] <string> domain name, id or uuid
[--path] <string> fully-qualified path of disk
[--bandwidth] <string> bandwidth limit in MiB/s
[--base] <string> path of base file to commit into (default bottom of
chain)
--shallow use backing file of top as base
[--top] <string> path of top file to commit from (default top of
chain)
--delete delete files that were successfully committed
--wait wait for job to complete
--verbose with --wait, display the progress
--timeout <number> with --wait, abort if copy exceeds timeout (in
seconds)
--async with --wait, don't wait for cancel to finish
It does not say anything about the device.
I tried:
virsh # blockcommit crispor_1604 /var/lib/libvirt/images/crispor_1604.sn vda
--wait --verbose
error: bandwidth must be a number
virsh # blockcommit crispor_1604 /var/lib/libvirt/images/crispor_1604.sn --wait
--verbose
error: invalid argument: No device found for specified path
virsh # blockcommit crispor_1604 crispor_1604.sn --wait --verbose
error: invalid argument: No device found for specified path
virsh # blockcommit crispor_1604 vda --wait --verbose
error: Operation not supported: committing the active layer not supported yet
virsh # blockcommit crispor_1604 crispor_1604.sn --wait --verbose
error: invalid argument: No device found for specified path
virsh # blockcommit crispor_1604 crispor_1604.sn --verbose
error: missing --wait option
virsh # blockcommit crispor_1604 crispor_1604.sn
error: invalid argument: No device found for specified path
virsh # blockcommit crispor_1604 crispor_1604.sn vda
error: bandwidth must be a number
Am i missing something ? Is there an error or is my libvirt version to old ?
If yes, would it be successfull to copy the files to a host with more recent
libvirt, define it and then blockcommit ?
I have libvirt 1.2.5-15.3 (host is SLES 11 SP4).
Bernd
Helmholtz Zentrum München
Helmholtz Zentrum Muenchen
Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH)
Ingolstaedter Landstr. 1
85764 Neuherberg
www.helmholtz-muenchen.de
Aufsichtsratsvorsitzende: MinDir.in Prof. Dr. Veronika von Messling
Geschaeftsfuehrung: Prof. Dr. med. Dr. h.c. Matthias Tschoep, Kerstin Guenther
Registergericht: Amtsgericht Muenchen HRB 6466
USt-IdNr: DE 129521671