Mit ext4 (und der extfs-Familie) werden die Inode-Tabellen zur Formatierungszeit vorab zugewiesen. Dies ist das traditionelle Unix-Verhalten in Bezug auf Dateisysteme. Wenn Sie ein Volume mit dem Dateisystem extfs formatieren, können Sie die Anzahl der erwarteten -N
Inodes mithilfe des Parameters des Dienstprogramms mkfs anpassen. ( Quelle ).
Dieses Design bietet trotz Skalierbarkeit möglicherweise eine bessere Leistung (wenn mehrere Dateien gleichzeitig zugewiesen werden). Man muss die Anzahl der zum Formatierungszeitpunkt benötigten Inode schätzen. Ein Volume, das hauptsächlich kleine Dateien enthält, beispielsweise ein Mailserver, benötigt mehr Inodes pro Gigabyte als ein Volume mit ISOs.
Sobald Sie alle Inodes verwendet haben, können Sie keine neue Datei erstellen, selbst wenn noch freier Speicherplatz auf dem Laufwerk vorhanden ist. Je größer das Volumen ist, desto größer sind die Inode-Tabellen. Dies führt dazu, dass auf großen Laufwerken viele Gigabyte verloren gehen.
Andererseits verwendet XFS eine Technik, die als "dynamische Inode-Zuweisung" ( Quelle ) bezeichnet wird. Dies führt zu einer besseren Skalierbarkeit, da die Anzahl der Inodes abhängig von der Datenmenge auf dem Volume zunimmt oder abnimmt. Dies ist ein besseres Design, wenn Sie nicht vorhersagen können, wofür das Dateisystem verwendet wird, oder wenn Sie den zusätzlichen Speicherplatz für Ihre Daten sparen möchten. Dies ist auch das NTFS- Verhalten.
Was über Journaling gesagt wurde, ist falsch, Journaling kostet nur wenige Megabyte. Der Hauptraumverlust ist auf die statische Inode-Zuordnung zurückzuführen.