[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] qemu-img create doesn't always replace the existing fil
From: |
Richard W.M. Jones |
Subject: |
Re: [Qemu-devel] qemu-img create doesn't always replace the existing file |
Date: |
Tue, 8 Nov 2016 14:16:43 +0000 |
User-agent: |
Mutt/1.5.20 (2009-12-10) |
On Tue, Nov 08, 2016 at 03:05:24PM +0100, Kevin Wolf wrote:
> [ Cc: qemu-block ]
>
> Am 08.11.2016 um 11:58 hat Richard W.M. Jones geschrieben:
> > When using 'qemu-img create', if the file being created already
> > exists, then qemu-img tries to read it first. This has some
> > unexpected effects:
> >
> >
> > $ rm test.qcow2
> > $ qemu-img create -f qcow2 -o compat=1.1,preallocation=off test.qcow2 1G
> > Formatting 'test.qcow2', fmt=qcow2 size=1073741824 compat=1.1
> > encryption=off cluster_size=65536 preallocation=off lazy_refcounts=off
> > refcount_bits=16
> > $ du -sh test.qcow2
> > 196K test.qcow2
> >
> >
> > $ rm test.qcow2
> > $ qemu-img create -f qcow2 -o compat=1.1,preallocation=falloc test.qcow2 1G
> > Formatting 'test.qcow2', fmt=qcow2 size=1073741824 compat=1.1
> > encryption=off cluster_size=65536 preallocation=falloc lazy_refcounts=off
> > refcount_bits=16
> > $ qemu-img create -f qcow2 -o compat=1.1,preallocation=off test.qcow2 1G
> > Formatting 'test.qcow2', fmt=qcow2 size=1073741824 compat=1.1
> > encryption=off cluster_size=65536 preallocation=off lazy_refcounts=off
> > refcount_bits=16
> > $ du -sh test.qcow2
> > 256K test.qcow2 # would expect this to be the same as above
>
> For me it's actually even more:
>
> $ du -h /tmp/test.qcow2
> 448K /tmp/test.qcow2
>
> However...
>
> $ ls -lh /tmp/test.qcow2
> -rw-r--r--. 1 kwolf kwolf 193K 8. Nov 15:00 /tmp/test.qcow2
>
> So qemu-img can't be at fault, the file has the same size as always.
>
> Are you using XFS? In my case I would have guessed that it's probably
> some preallocation thing that XFS does internally. We've seen this
> before that 'du' shows (sometimes by far) larger values than the file
> size on XFS. That space is reclaimed later, though.
Yes I am, and indeed this looks like a filesystem artifact and not
a problem with qemu-img.
Thanks,
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages. http://libguestfs.org