Linux: Warum Inode-Größe ändern?

12

Tune2fs erlaubt es, die Inode-Größe von Standard (128 Bytes in ext3, 256 Bytes in ext4) auf fast alles zu ändern, aber es sollte eine Zweierpotenz sein. Was sind die Gründe für die Änderung der Standard-Inode-Größe?

Hier steht, dass dies getan werden kann, um ACL-Attribute in Inodes speichern zu können. Was kann sonst noch in einem Inode gespeichert werden?

Gibt es einen Grund, die Inode-Größe bei modernen Laufwerken mit hoher Kapazität (2 TB und mehr) zu erhöhen?

Vladislav Rastrusny
quelle
1
Ich weiß , dass ein Grund , nicht die Inode - Größe von 128 Bytes zu ändern - Ext2IFS wird nicht mehr in der Lage sein , Ihre Partition zu montieren. Wenn Sie diesen Treiber verwenden, um von Windows aus auf Ihre Linux-Partitionen zuzugreifen, sollten Sie darauf achten, dass Ihre Inode-Größe 128 Byte beträgt.
DevSolar
@ DevSolar Heutzutage [in 2015] ist Ext2IFS veraltet und Ext3 auch :-) Wie liest man ext4-Partitionen unter Windows? . ext4 ist standardmäßig 256, um einige neue Dateiattribute zu speichern.
Franklin Piat

Antworten:

8

Ich denke, die aktuellen Versionen von mkfs.ext2 / 3/4 haben standardmäßig eine Inode-Größe von 256 Byte (siehe /etc/mke2fs.conf). Diese IIRC ermöglicht Zeitstempel im Nanosekundenbereich mit ext4, und wie Sie sagen, passen erweiterte Attribute in den Inode. Solche erweiterten Attribute sind beispielsweise ACLs, SELinux-Labels und einige Samba-spezifische Labels.

Größere Inodes verschwenden natürlich ein wenig Platz, und wenn Sie sie vergrößern, geraten Sie ziemlich schnell in ein Gebiet mit abnehmenden Renditen. Die Standardeinstellung von 256 Byte ist wahrscheinlich in den meisten Situationen ein perfekter Kompromiss.

janneb
quelle
Auf meinen Systemen mit CentOS 5.3 beträgt die Inode-Größe standardmäßig 128.
Vladislav Rastrusny
1
@FractalizeR. Ja, mke2fs auf RHEL / CentOS 5 stammt aus dem Jahr 2006. Ich glaube, die Standardeinstellung hat sich vor ein paar Jahren geändert, als ext4 vielleicht für stabil erklärt wurde.
Januar,
1
Unter CentOS 5.5 gibt /etc/mke4fs.conf eine Standard-Inode-Größe von 256 an.
sciurus
0

Mit der ext4-Option inline_data (neu in Linux 3.8) gibt es einen neuen guten Grund für größere Inode-Größen: Bei dieser Option kann der Dateiinhalt im Inode der Datei gespeichert werden (wenn die Datei klein genug ist). Dies vermeidet eine Suchoperation. Ich habe noch keine echten Benchmarks dafür gesehen.

Sven
quelle
0

Grub funktioniert nicht mit einer Inode-Größe von 256, also verwende ich 128.

mathew
quelle