Apakah ada cara untuk memperkecil gambar qcow2 tanpa mengubahnya menjadi mentah?

12

Apakah ada cara untuk memperkecil gambar qcow2 tanpa mengubahnya menjadi mentah?

Saya tidak dapat mengonversinya menjadi mentah karena saya tidak memiliki ruang disk yang cukup untuk gambar mentah.

KAMU
sumber

Jawaban:

17

Konversi noop (qcow2-ke-qcow2) menghilangkan ruang yang jarang:

qemu-img convert -O qcow2 source.qcow2 shrunk.qcow2

Anda juga dapat mencoba menambahkan kompresi ( -c) ke gambar output:

qemu-img convert -c -O qcow2 source.qcow2 shrunk.qcow2

Sebelum menjalankan perintah di atas, pastikan untuk mematikan VM. Setelah Anda puas dengan hasilnya, Anda dapat mengganti nama shrunk.qcow2 menjadi nama asli yang diinginkan oleh konfigurasi VM Anda.

SZ Quadri
sumber
3
flag -c di qemu-img convert -c -O adalah untuk kompresi, bukan menyusut ... dan itu dapat menurunkan kecepatan disk ...
Anton Anikin
Ini menciptakan file kedua, jadi Anda perlu ruang kosong dua kali lebih banyak daripada gambar? Apakah ada cara untuk mengecilkannya di tempat?
endolith
6

Coba virt-sparsify- itu akan mengisi ulang blok yang tidak digunakan dalam gambar dan kemudian deduplicate nol.

dyasny
sumber
Terima kasih atas jawaban Anda, tetapi virt-sparsify mengatakan itu tidak dapat mengubah ukuran gambar disk dan saya menemukan virt-ukuran dari itu, tetapi sepertinya saya masih perlu mengalokasikan ruang untuk memperluas (bahwa saya tidak memiliki cukup ruang pada harddisk saya). Bagaimanapun, Terima kasih banyak atas info Anda.
ANDA
2
@ YOU Versi terbaru dari virt-sparsify dapat bekerja di tempat tanpa mengalokasikan ruang untuk salinan lengkap dari disk image.
Michael Hampton
0

Saya menggunakan virt-sparsify:

virt-sparsify /path/to/source.qcow2 --compress /path/to/output.qcow2
Mohamed Elbahja
sumber