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

Пустой файл сжимается после создания ФС

У меня проблема с моим сервером, которая меня пугает. Я хочу создать пустой файл и затем смонтировать его как устройство цикла. Итак, я пробую это:

dd if=/dev/zero of=/tmp/loop.img bs=1024k count=10

Когда я проверяю файл, он имеет правильный размер:

ls -lisah
528484126  10M -rw-r--r--  1 root root  10M 31. Mär 04:06 loop.img

Следующим шагом будет создание файла fs:

mkfs.ext4 /tmp/loop.img

а затем файл меньше:

ls -lisah
528484126 1,2M -rw-r--r--  1 root root  10M 31. Mär 04:10 loop.img

И я не могу смонтировать файл. Кто-нибудь знает, что произошло, или может сказать мне мою ошибку?

Что ж, ваша самая большая проблема в том, что вы не смонтировали образ через цикл перед запуском mkfs, что вы, вероятно, хотели сделать (например, losetup /dev/loop0 /tmp/loop.img с последующим mkfs.ext4 /dev/loop0)

Но что касается усадки и причин изменения цифр, 1,2M - это фактическое использование файла; 10M - это выделение диска. Это говорит о том, что «вы предоставили loop.img 10M для / tmp, и в настоящее время он использует их 1,2M».

Образы файловой системы - это один из немногих типов файлов (наряду с редко размещенными файлами), где это важно; обычно выделение на диске - это просто граница следующего блока, превышающая фактический размер файла.