compress qcow2 qemu-kvm

qemu-img convert  source_not_compressed_qcow2.img -O qcow2 -c  target_compressed_qcow2.img

Пример

qemu-img convert /home/vm/nfsshare-vmmanager.qcow2 -O qcow2 -c /home/vm/nfsshare-vmmanager_compress.qcow2

Для сжатия образа диска формата qcow2 в среде QEMU-KVM используется команда qemu-img. Она позволяет уменьшить размер файла виртуального жесткого диска путем удаления неиспользуемых блоков памяти.

Шаги по компрессии образа

  1. Убедитесь, что виртуальная машина выключена. Если образ диска используется запущенной виртуальной машиной, процесс сжатия завершится неудачей.
  2. Используйте команду qemu-img convert, чтобы создать сжатый образ:sudo qemu-img convert -O qcow2 -c source.qcow2 destination.qcow2Где:
    • source.qcow2: исходный файл образа диска,
    • destination.qcow2: новый сжатый файл образа диска.

    Флаг -c включает компрессию образа.

  3. После завершения процесса проверяйте размеры файлов командой:ls -lh *.qcow2

Дополнительная оптимизация

Чтобы дополнительно освободить пространство внутри виртуальных машин перед сжатием, выполните следующие шаги:

  • Запустите виртуальную машину и очистите ненужные файлы.
  • Затем используйте утилиту zerofree или dd if=/dev/zero of=zerofile bs=1M count=$((disk_size)) && sync && rm zerofile, чтобы заполнить свободные блоки нулями. Это упростит дальнейшую компрессию.

Таким образом, команды будут выглядеть следующим образом:# Очистка образов вручнуюsudo apt install zerofree # установка инструмента для очистки свободных секторовsudo zerofree /dev/vda1 # замените vda1 на ваш диск# Альтернативный методdd if=/dev/zero of=/tmp/fill bs=1M || truesyncrm /tmp/fill

Затем повторите процедуру сжатия (qemu-img convert) снова.

Итоги

Процесс состоит из двух этапов:

  1. Подготовьте виртуальную машину, заполнив её пустые области нулями.
  2. Выполните преобразование образа с использованием опции сжатия (-c), что позволит значительно уменьшить итоговый размер файла.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.