-T largefile
Флаг регулирует количество дескрипторов, которые выделяются при создании файловой системы. После распределения их число не может быть изменено (по крайней мере, для ext2 / 3, не совсем уверено в ext4). По умолчанию используется один индекс на каждые 16 КБ дискового пространства. -T largefile
делает это одним индексом на каждый мегабайт.
Каждый файл требует один индекс. Если у вас не осталось никаких инодов, вы не сможете создавать новые файлы. Но эти статически расположенные inode тоже занимают место. Вы можете сэкономить около 1,5 гигабайт на каждые 100 ГБ диска-T largefile
, в отличие от настроек по умолчанию. -T largefile4
(один индекс на 4 МБ) не имеет такого драматического эффекта.
Если вы уверены, что средний размер файлов, хранящихся на устройстве, будет больше 1 мегабайта, то непременно установите -T largefile
. Я с радостью использую его на своих разделах хранения и думаю, что это не слишком радикально для настройки.
Однако, если вы распакуете в этот раздел очень большой архив с исходным кодом из множества файлов (например, сотни тысяч), у вас будет шанс исчерпать inode для этого раздела. В этой ситуации мало что можно сделать, кроме выбора другого раздела для разархивирования.
Вы можете проверить, сколько inode у вас есть в действующей файловой системе с помощью dumpe2fs
команды:
# dumpe2fs /dev/hda5
[...]
Inode count: 98784
Block count: 1574362
Reserved block count: 78718
Free blocks: 395001
Free inodes: 34750
Здесь я все еще могу создать 34 тысячи файлов.
Вот что я получил после того, как сделал mkfs.ext3 -T largefile -m 0
раздел размером 100 ГБ:
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/loop1 102369 188 102181 1% /mnt/largefile
/dev/loop2 100794 188 100606 1% /mnt/normal
Версия для большого файла имеет 102 400 inode, тогда как обычная версия создала 6 553 600 inode и сэкономила при этом 1,5 ГБ.
Если у вас есть четкое представление о том, какой размер файлов вы собираетесь поместить в файловую систему, вы можете точно настроить количество inode непосредственно с помощью -i
переключателя. Устанавливает соотношение байтов на индекс. Вы получите 75% экономии места, если будете использовать, -i 65536
сохраняя при этом возможность создавать более миллиона файлов. Я обычно рассчитываю сохранить как минимум 100 000 инодов в запасе.