Linux: зачем менять размер инода?

12

Tune2fs позволяет изменить размер inode со стандартного (128 байтов в ext3, 256 байтов в ext4) почти на что угодно, но это должно быть степенью двойки. Каковы причины изменения размера inode по умолчанию?

Здесь написано, что это можно сделать, чтобы иметь возможность хранить атрибуты ACL внутри inode. Что еще можно хранить внутри инодов?

Есть ли причина для увеличения размера инода на современных дисках большой емкости (2 ТБ и более)?

Владислав Раструсный
источник
1
Я знаю причину не менять размер inode со 128 байтов - Ext2IFS больше не сможет монтировать ваш раздел. Если вы используете этот драйвер для доступа к разделам Linux из Windows, вы должны позаботиться о том, чтобы размер вашего inode составлял 128 байт.
DevSolar
@DevSolar В настоящее время [в 2015 году] Ext2IFS устарел и ext3 тоже :-) Как читать разделы ext4 в Windows? , ext4 по умолчанию 256 для хранения некоторых новых атрибутов файла.
Франклин Пят

Ответы:

8

Я думаю, что по умолчанию текущие версии mkfs.ext2 / 3/4 по умолчанию имеют размер индекса 256 байт (см. /Etc/mke2fs.conf). Этот IIRC позволяет наносекундные метки времени с ext4, и, как вы говорите, более широкие атрибуты вписываются в индекс. Такими расширенными атрибутами являются, например, ACL, метки SELinux, некоторые специфичные для Samba метки.

Большие иноды, конечно, тратят немного места, и когда вы увеличиваете их, вы довольно быстро попадаете на убывающую возвращаемую территорию. 256 байтов по умолчанию, вероятно, являются отличным компромиссом для большинства ситуаций.

janneb
источник
В моих системах с CentOS 5.3 размер inode по умолчанию равен 128.
Владислав Раструсный
1
@FractalizeR. Да, mke2fs в RHEL / CentOS 5 восходит к 2006 году. Я думаю, что значение по умолчанию изменилось несколько лет назад, иногда, когда ext4 был объявлен стабильным.
Янв
1
В CentOS 5.5 в /etc/mke4fs.conf указывается размер inode по умолчанию 256.
sciurus
0

С опцией ext4 inline_data (впервые в Linux 3.8) появилась новая веская причина для больших размеров inode: с помощью этой опции содержимое файла может храниться в inode файла (если файл достаточно мал). Это позволяет избежать одной операции поиска. Я еще не видел никаких реальных ориентиров для этого.

Sven
источник
0

Grub не работает с размером индекса 256, поэтому я использую 128.

Mathew
источник