LINUX.ORG.RU
решено ФорумAdmin

qemu у RAW диска размер disk size меньше virtual size

 ,


0

3

В общем, я наступил на какие-то грабли. Или не наступил. Непонятно.

Сделал на raw образе ВМ (образ файлом)

virsh blockresize
и получил что-то непонятное. Команда virsh blockresize отработало нормально, но изменился только virtual size. Размер файла образа при этом НЕ изменился.

Потом я сделал

qemu-img resize
и размер файла стал соответствовать, НО disk size НЕ изменился.

Сейчас наблюдаю такую картину

root@host31:/storage/images# qemu-img info name.img 
image: name.img
file format: raw
virtual size: 200G (214748364800 bytes)
disk size: 101G
root@host31:/storage/images# 

и я понятия не имею что с этим делать. Оставить как есть? Как-то исправить? Создать новый образ на замену и перелить данные? В общем, нужна помощь.

★★★★★

Может попробовать еще раз ресайз сделать? На чуть побольше.

targitaj ★★★★★
() автор топика

Ты умеешь LVM? Зачем ресайзить диски, к тому же довольно большие? Проще добавить еще один и дальше LVM поможет увеличить в нужном месте

futurama ★★★★★
()
Ответ на: комментарий от futurama

Зачем ресайзить диски, к тому же довольно большие?

А в чем проблема resizefs/lvextend?

Проще добавить еще один и дальше LVM поможет увеличить в нужном месте

Еще один диск в ВМ а там LVMом рулить? Или кто, в каком месте там поможет?) Вы LVM на гостевой системе предлагаете?

Да и причем тут LVM? У чела img образ.

Кстати, по теме:

$ sudo qemu-img info /dev/mapper/VG-kvm--win10 
image: /dev/mapper/VG-kvm--win10
file format: raw
virtual size: 40G (42949672960 bytes)
disk size: 0
samson ★★
()
Ответ на: комментарий от samson

Я предложил не ресайзить «img образ», а добавить еще один «img образ»

А внутри виртуалки использовать LVM и тут никаких проблем с «А в чем проблема resizefs/lvextend?»

? Кстати что у тебя по теме ?

Что raw диск на LV имеет disk size = 0 ? Это логично

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 1)

virtual size: 200G (214748364800 bytes)

disk size: 101G

это нормально, файл будет расти (disk size) по-мере использования (заполнения)

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 2)
Ответ на: комментарий от futurama

Кто будет расти? Файл образа формата RAW? В этом образе файлов на 75 гиг, не соответствует.

targitaj ★★★★★
() автор топика
Ответ на: комментарий от samson

Что-то я тогда вообще не понимаю что такое virtual size и disk size.

targitaj ★★★★★
() автор топика
Ответ на: комментарий от samson
root@host42:~# qemu-img info /dev/vg01/vm-105-disk-0 
image: /dev/vg01/vm-105-disk-0
file format: raw
virtual size: 20 GiB (21474836480 bytes)
disk size: 0 B
root@host42:~#

хм, реально. А как это надо понимать?

root@host31:/storage/images# qemu-img create -f raw test 10G
Formatting 'test', fmt=raw size=10737418240 
root@host31:/storage/images# qemu-img info test 
image: test
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 0
root@host31:/storage/images# 

ммммда

но при этом

root@host31:/storage/images# ll -h test 
-rw-r--r-- 1 root root 10G Jun 23 12:51 test
root@host31:/storage/images# 

размер файла соответствует

targitaj ★★★★★
() автор топика
Последнее исправление: targitaj (всего исправлений: 2)

https://www.qemu.org/docs/master/interop/qemu-img.html

virtual size
The size of the guest disk

disk size
How much space the image file occupies on the host file system (may be shown as 0 if this information is unavailable, e.g. because there is no file system)
Так, для LVM нормально показывать 0 потому что оно не на ФС хост-ос. В остальных случаях поведение всё такое же непонятное. Я выше в целях тестирования создал образ формата RAW размером 10 гиг, но оно мне показывает 0. Как это надо понимать?

targitaj ★★★★★
() автор топика
Ответ на: комментарий от targitaj

Кто будет расти? Файл образа формата RAW?

Ну да, у тебя там дырки. Если ты сделаешь qemu-img create -f raw - у получившегося образа disk size будет 0.

В этом образе файлов на 75 гиг, не соответствует.

Так он у тебя исходно 100 был. Уменьшаться образы не умеют.

Что-то я тогда вообще не понимаю что такое virtual size и disk size.

в случае raw, virtual size - то что показывает ls -l, а disk size - ls -s --block-size=1.

lua
()
Последнее исправление: lua (всего исправлений: 1)

Размер файла образа при этом НЕ изменился.

вот этого я так и не понял. Прямо сейчас изменил размер другого образа через qemu-img resize и в выводе ls -la показало правильный размер. В выводе ls -s не изменилось, да.

targitaj ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.