簡體   English   中英

如何更改 qcow2 圖像的 zstd 級別?

[英]How to change zstd level for qcow2 image?

根據 wiki ,有一個選項compression_type=zstd可以為 qcow2 啟用 zstd 壓縮。

但它總是使用zstd level 3 ,我怎么能用level 19壓縮它? 此圖像是只讀的,我只想要最大壓縮級別。

我現在使用的命令是:

qemu-img convert -p -f qcow2 -O qcow2 -c -o compression_type=zstd,preallocation=off win10.qcow2 win10-zstd.qcow2

其他信息:

Linux fedora 5.17.5-300.fc36.x86_64
qemu-img.x86_64 2:6.2.0-9.fc36  

沒有命令行選項,所以我們需要修改源代碼。 ./block/qcow2-threads.c

  206 |     return -EIO;
  207 | }
+ 208 | ZSTD_CCtx_setParameter(cctx, ZSTD_c_strategy, ZSTD_btultra2);
  209 | /*

按照官方教程編譯它。 這里有一些提示:

# (Fedora) Install dependencies
dnf install bzip2 ninja-build libzstd-devel pixman-devel
# Enable ZSTD, disable useless features for shorter compile time
./configure --enable-zstd --disable-tcg --disable-kvm

現在我們在./build/softemu找到了qemu-img 嘗試轉換文件:

./qemu-img convert -p -f qcow2 -O qcow2 -c -o compression_type=zstd win10.qcow2 win10-2.qcow2

我們得到了它:

[kkocdko@fedora tmpfs]$ ls -l
total 3411264
-rw-r--r--. 1 kkocdko kkocdko 1651638272 Jun 12 01:57  win10-2.qcow2
-rw-r--r--. 1 kkocdko kkocdko 1841496064 May 25 18:21  win10.qcow2

也貼在我的博客上

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM