Есть ли способ уменьшить изображение qcow2, не преобразовав его в сыром виде?


12

Есть ли способ уменьшить изображение qcow2, не преобразовав его в сыром виде?

Я не могу преобразовать его в raw, потому что на диске недостаточно места для необработанного образа.

Ответы:


17

Циклическое преобразование (qcow2-to-qcow2) удаляет разреженное пространство:

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

Вы также можете попробовать добавить сжатие ( -c) к выходному изображению:

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

Перед выполнением вышеуказанной команды обязательно выключите ВМ. После того, как вы удовлетворены результатом, вы можете переименовать shrunk.qcow2 в оригинальное имя, которое хочет ваша конфигурация VM


3
флаг -c в qemu-img convert -c -O предназначен для сжатия, а не для сжатия ... и может снизить скорость диска ...
— Антон Аникин

Тем не менее, создается второй файл, поэтому вам нужно вдвое больше свободного места, чем на изображении? Есть ли способ уменьшить его на месте?
— эндолиты

6

Попробуйте virt-sparsify- он обнулит неиспользуемые блоки в изображении, а затем дедуплицирует нули.


Спасибо за ваш ответ, но virt-sparsify сказала, что не может изменить размер образов дисков, и я обнаружил, что virt-resize из этого, но похоже, что мне все еще нужно выделять места для расширения (что на жестком диске недостаточно места). В любом случае, большое спасибо за информацию.
— ВЫ

2
@YOU Текущие версии virt-sparsify могут работать на месте без выделения места для полной копии образа диска.
— Майкл Хэмптон

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.