[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Уменьшить qcow2



On 01/18/2013 11:49 AM, Stanislav Vlasov wrote:
18 января 2013 г., 15:35 пользователь Alex Kuklin<alex@kuklin.ru>  написал:
Хм... А откуда виртуалка снаружи узнает, что файлы, записанные изнутри
- удалены?
По-хорошему надо а) заполнить свободное место нулями, б)
воспользоваться qemu-img convert для того, чтоб превратить нули в
дырки.
Т.е., как я понял, прокатит следующий порядок действий:
0) заполняем свободное место нулями.
1) Конвертирование исходного qcow в raw
2) Конвертирование raw в qcow
Вот теперь - таки да. Причём, можно конвертить не только в raw.
Не знаю, можно ли конвертить qcow->qcow. Если можно - всё пройдёт в
один присест.
вот чисто любопытно, откуда оно узнает, что сектор с мусором - это мусор и
его можно не копировать?
Насколько я понял, за счёт того, что в данном конкретном блоке -
сплошные нули (см. опцию -S)

Кстати, таки да, подойдёт для данной цели:
            Image conversion is also useful to get smaller image when
using a growable format such as "qcow" or "cow": the empty sectors are
detected and
            suppressed from the destination image.

Вот лично для меня фаза 0 - не особо очевидна, чем это делать.
Тогда как вариант с partimage - очевиден.

Кстати,

> qcow2 marks the discarded blocks as free and will reuse them in future
> allocations.

пишут в рассылке.

Так что, если гостевая операционка поддерживает trim, то все должно быть хорошо и так.
Вот только XP - не поддерживает.

--
Alex


Reply to: