qemu-img は、CPU を無駄に消費する

qemu-img は、CPU を無駄に消費する

qcow2 イメージの使用量を減らそうとしています。次の操作を実行しました。

qemu-img convert -p -f qcow2 -O qcow2 my_img.qcow2.backup my_img.qcow2

200192 バイトを出力しましたが、進行状況は 0.00% で止まっています。CPU 使用率は 100% で固定されており、2 時間放置しました。入力イメージ ファイルは 160G です。また、iotop によるとディスク使用量はありません。qemu-img は、これほど多くの時間を無駄にしているのでしょうか?

また、raw 出力形式を使用してみましたが、同じ結果になることも言及しておきます。

答え1

149G (仮想 168G) の QCOW2 ファイルでまったく同じ問題が発生しました。変換には 2 日かかりましたが、最初の 1 日は 0.00% で止まってしまいました。とにかく非常に遅いのです。

$ qemu-img check old-fragmented.qcow2 
No errors were found on the image.
2446873/2745536 = 89.12% allocated, 27.96% fragmented, 0.00% compressed clusters
Image end offset: 160389464064

断片化のないその後の変換は、予想どおりの速さでした。-o preallocation=metadataパフォーマンスの向上をお試しください。

関連情報