On Mon, Nov 29, 2021 at 13:05:40 +0100, Elias Mobery wrote: > Hi everybody! > > I'm using a snapshot purely for writes and was wondering if it's possible > to clear/empty the snapshot after it reaches a certain size? > > Created with: > virsh snapshot-create-as --disk-only So this creates a so-called external snapshot, which for disks means an overlay image. > > I tried deleting and recreating it but get an error at deletion: > > virsh snapshot-delete but unfortunately deleting external snapshots is not yet implemented. The usual approach is to do a block commit operation to merge the overlay images back into the backing image manually. The basic syntax via virsh is: virsh blockcommit --active --pivot --verbose $VM $DISK This merges any overlay images into the backing image. Backing image is the most deepest nested image when you look at <backingStore> in the XML. > Error: source for disk 'vda' is not a regular file This error doesn't make much sense though. The error should state that deletion of external snapshots is nto supported. > > I also tried virsh snapshot-create-as --no-metadata --disk-only This creates a snapshot without libvirt metadata. This means that libvirt just creates the overlay, but doesn't create any internal state related to it. It saves you the step of deleting metadata, but you still need to manually merge the image. > > But the same error as above pops up when trying to delete. This makes absolutely no sense though. Are you sure you are copying the correct error message? 'virsh snapshot-delete' works _only_ with snapshots which do have metadata, so if you create a snapshot without there's nothing to delete.