Назад | Перейти на главную страницу

Как создать файл qcow2 без тонкой подготовки?

Когда я сделаю следующее, файл qcow2 будет меньше 200 КБ.

# qemu-img create -f qcow2 /var/lib/libvirt/images/urb-dat0.qcow2 10G
# du -hsc /var/lib/libvirt/images/urb-dat0.qcow2
196K    /var/lib/libvirt/images/urb-dat0.qcow2

Если я прикреплю его к гостевому KVM и fdisk -l

Disk /dev/vdb: 0 MB, 197120 bytes, 385 sectors

Вопрос

Как сделать файл qcow2 размером 10 ГБ без тонкой подготовки?

Вы можете использовать preallocation вариант.

qemu-img create -o preallocation=full -f qcow2 /var/lib/libvirt/images/urb-dat0.qcow2 10G

Ссылка: https://linux.die.net/man/1/qemu-img

Режим предварительного выделения (допустимые значения: выкл., Метаданные, полное). Изображение с заранее выделенными метаданными изначально больше, но может повысить производительность, когда изображение нужно увеличить. Полное предварительное выделение дополнительно записывает нули во все изображение, чтобы предварительно выделить нижние уровни (например, файловую систему, содержащую файл изображения). Обратите внимание, что полное предварительное выделение записывается в каждый байт виртуального диска, поэтому для больших образов может потребоваться много времени.

Существующий файл qcow2 с тонким предоставлением можно преобразовать в полностью выделенный файл следующим образом:

qemu-img convert -p -f qcow2 -O qcow2 -S 0 original-file.qcow2 new-file.qcow2

(Это не ответ на вопрос, но все же может представлять интерес.)