There is an option compression_type=zstd
to enable zstd compression for qcow2 according to wiki.
But it always uses zstd level 3
, how could I do to compress it with level 19
? This image is read-only and I just want the max compression level.
The command I use now is:
qemu-img convert -p -f qcow2 -O qcow2 -c -o compression_type=zstd,preallocation=off win10.qcow2 win10-zstd.qcow2
Other info:
Linux fedora 5.17.5-300.fc36.x86_64
qemu-img.x86_64 2:6.2.0-9.fc36
There are not a command line option, so we need to modify the source code. On On ./block/qcow2-threads.c (QEMU v8.2.0):
Compiling by yourself or use my prebuilt binary (built on GitHub Actions).
Now we found
qemu-img
at./build/softemu
. Try to convert a file:We got it: