มีวิธีใดที่จะลดขนาดรูปภาพ qcow2 โดยไม่ต้องแปลงเป็นไฟล์ดิบหรือไม่?


12

มีวิธีใดที่จะลดขนาดรูปภาพ qcow2 โดยไม่ต้องแปลงเป็นไฟล์ดิบหรือไม่?

ฉันไม่สามารถแปลงเป็น raw ได้เพราะฉันมีพื้นที่ดิสก์ไม่เพียงพอสำหรับภาพดิบ

คำตอบ:


17

การแปลง Noop (qcow2-to-qcow2) ลบช่องว่าง:

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

คุณสามารถลองเพิ่มการบีบอัด ( -c) ลงในภาพที่ส่งออกได้:

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

ก่อนที่จะรันคำสั่งข้างต้นโปรดปิด VM หลังจากที่คุณพอใจกับผลลัพธ์แล้วคุณสามารถเปลี่ยนชื่อ shrunk.qcow2 เป็นชื่อเดิมที่ VM config ของคุณต้องการ


3
แฟล็ก -c ใน qemu-img แปลง -c -O สำหรับการบีบอัดไม่ลดขนาด ... และสามารถลดความเร็วดิสก์ ...
Anton Anikin

สิ่งนี้จะสร้างไฟล์ที่สองดังนั้นคุณต้องการพื้นที่ว่างมากเป็นสองเท่าของรูปภาพใช่ไหม มีวิธีการหดมันในสถานที่หรือไม่?
endolith

6

ลองvirt-sparsify- มันจะทำการ zerofill บล็อกที่ไม่ได้ใช้งานในภาพจากนั้นจึงทำการซ้ำซ้อนเป็นศูนย์


ขอบคุณสำหรับคำตอบของคุณ แต่virt-sparsifyกล่าวว่ามันไม่สามารถปรับขนาดดิสก์อิมเมจและฉันพบว่าvirt-resizeจากนั้น แต่ดูเหมือนว่าฉันยังคงต้องจัดสรรพื้นที่เพื่อขยาย อย่างไรก็ตามขอบคุณมากสำหรับข้อมูลของคุณ
คุณ

2
@YOU virt-sparsify เวอร์ชันปัจจุบันสามารถทำงานได้โดยไม่ต้องจัดสรรพื้นที่สำหรับสำเนาดิสก์อิมเมจที่สมบูรณ์
Michael Hampton

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.