SelfLinux Grundlagen Journaling Dateisysteme Abschnitt 3 | SelfLinux-0.13.0

| Journaling Dateisysteme | Autoren Formatierung GFDL

#### 3 Verschiedene Dateisysteme für verschiedene Zwecke

Alle beschriebenen Dateisysteme sind im Kernel 2.6 und ab Kernel 2.4.25 integriert.

#### 3.1 Ext2 und Ext3

Bis vor kurzem war Ext2 das einzig ernsthaft nutzbare Linux-Dateisystem. Es ist sehr stabil, da es seit 1993 für Linux entwickelt und korrigiert wird. Ext2 enthält keine Journal-Funktion und muss ohne Binärbaum auskommen, Ext3 ist ein Ext2, das um das Journaling erweitert wurde. Ext2 kann in Ext3 umgewandelt werden und umgekehrt. Diese Konvertierung ist zwischen anderen Dateisysteme nicht möglich.

Die Geschwindigkeit scheint akzeptabel zu sein für die klassische, unmoderne Architektur des Dateisystems. Nur bei sehr große Dateien im GB-Bereich sowie bei Verzeichnissen mit tausenden von Dateien scheint Ext2/3 von der Konkurrenz deutlich abgehängt zu werden.

Wie bereits weiter oben erwähnt, hat Ext3 zwei Funktionen, welche die anderen modernen Dateisysteme nicht haben.

Einmal ist das Zusammenspiel von Metadaten und Journal exakter synchronisiert, denn das commit wird erst in das Journal geschrieben, wenn die eigentlichen Daten wirklich auf der Festplatte sind. (Dies ist zur Beschleunigung übrigens deaktivierbar mit der Mount-Option data=writeback.)

Zum anderen kann Ext3 als einziger Kandidat auch die Daten selbst in sein Journal eintragen, was aber meistens einen starken Geschwindigkeitseinbruch bewirkt. Um diese Funktion zu aktivieren, muss die Mount-Optionenn data=journal in die /etc/fstab eingetragen werden. Wird dies so eingerichtet, empfiehlt sich zur Beschleunigung das Auslagern des Journals auf eine weitere Festplatte.

Des Weiteren hat Ext2/3 die meisten ergänzenden Zusatz-Programme.

Wenn es also darum geht, ein sehr zuverlässiges Linux aufzusetzen und die Geschwindigkeit des Dateisystems nicht das Allerwichtigste ist, scheint Ext3 eine gute Wahl zu sein.

#### 3.2 ReiserFS

ReiserFS wurde als einziges der hier erwähnten Journaling Dateisysteme komplett neu für Linux geschrieben. Es ist das neueste Dateisystem, gleichzeitig ist es jedoch auch das am längsten für Linux verfügbare Journaling-Dateisystem. Auch wenn es in den Anfangszeiten kein Journaling bereitstellte.

Es nutzt das Binärbaum-Konzept nicht nur für die Verzeichniseinträge, sondern teilweise auch für die Daten selbst, was kein anderes der hier aufgeführten Dateisysteme umsetzt.

Durch den konsequenten Einsatz neuer Techniken sollte man annehmen, ReiserFS sei das schnellste aller Dateisysteme. Den Tests nach zu urteilen ist dies aber nicht unbedingt so. Es zeigt sich jedoch, dass ReiserFS viele kleine Dateien schneller löschen kann als jedes andere Linux-Dateisystem.

ReiserFS unterstützt im Kernel 2.6 als einziges Dateisystem keine ACLs, was dieses Dateisystem für den Fileserver Samba weniger attraktiv macht, zumindest wenn dort diese erweiterten Rechte genutzt werden sollen.

Es gibt auch nur sehr wenige Hilfs-Programme für ReiserFS.

ReiserFS gilt in den neueren Tests als akzeptabel stabil. Es gab in der Vergangenheit mehrere Probleme mit einigen Anwendungen, wie mit NFS, die aber anscheinend inzwischen behoben sind.

Mit einigen Einschränkungen muss ReiserFS leben:

- Die Blockgröße ist auf 4K festgelegt.
- Es ist auf x86-Plattformen beschränkt.
- Quota, also Beschränkung auf eine maximalen Größe, die z. B. ein Home-Verzeichnis haben darf, wird nicht unterstützt.
- Es unterstützt keine ACLs.

#### 3.3 IBM-JFS

Unter OS2 und AIX schon länger bewährt, hat IBM JFS auf Linux portiert und unter GPL freigegeben. JFS ist Bestandteil des Standard-Kernels ab der Version 2.4.20.

Die anfänglichen Stabilitätsprobleme scheinen überwunden zu sein. Die Entwicklung ist aber noch nicht sehr weit vorangeschritten, so gibt es keine Quotas und die Hilfswerkzeuge, welche unter AIX zur Verfügung stehen, sind unter Linux nur zu einem geringem Umfang verfügbar. Auch die Dokumentation ist bisher eher knapp gehalten.

Unter Performance-Aspekten spielt JFS an vorderster Reihe mit.

#### 3.4 SGI-XFS

Auch XFS läuft inzwischen sehr stabil. In einigen Tests holt es sich Performance-Siege ein, v.a. beim Kopieren vieler kleiner Dateien als auch im Umgang mit sehr großen Dateien im GB Bereich.

Der Bootmanager LILO muss so konfiguriert werden, das er in den MBR (Master Boot Record), nicht in die Root-Partition installiert wird, damit das System bootfähig ist. GRUB, ein anderer Bootmanager, kann seit der Version 0.91 mit XFS umgehen.

Von den hier vorgestellten Dateisystemen ist XFS als letztes in den Kernel 2.4 integriert worden, seit der Version 2.4.25. Im Kernel 2.6 ist es seit dem ersten Release dabei.

XFS hat viele Werkzeuge zur Verwaltung des Dateisystems zu bieten, wie etwa zur Daten-Sicherung inklusive der ACL-Rechte (xfsdump), Partitionen vergrößern (xfs_growfs) oder Rettungs-Tools. Von der Anzahl und Vielseitigkeit dieser Werkzeuge her kann dem nur Ext2/3 das Wasser reichen. Außerdem ist die Dokumentation umfangreich.