Reiser File System

Dateisystem für UNIX mit Journaling
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 12. November 2005 um 20:24 Uhr durch Tsca.bot (Diskussion | Beiträge) (Bot: ergänze: lt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Technische Spezifikationen
Version 3.5 Version 3.6
max. Anzahl Dateien 232 - 3 232 - 3
max. Anzahl Dateien pro Verzeichnis 518701895 232 - 3
(limitiert durch eine Hash-Funktion, die 1.200.000 Dateinamen ohne Kollisionen zulässt)
max. Dateigröße (in Byte) 231 - 1 260
max. Anzahl der symbolischen Links pro Datei 216 232
max. Dateisystemgröße 232 4k-Blöcke

ReiserFS ist ein Mehrzweck-Dateisystem, dass kommerziell von einer Gruppe um Hans Reiser unter GPL entwickelt und realisiert wurde. Die Entwicklung der Version 3 wurde von mp3.com und der SuSE GmbH unterstützt, die Version 4 wurde vor allen Dingen vom DARPA und Linspire unterstützt.

ReiserFS war das erste Journaling-Dateisystem, das im Linux-Kernel standardmäßig (ab Kernel Version 2.4.1) enthalten war. Es wird im wesentlichen zur Formatierung von Festplattenpartitionen, logical Volumes oder RAID-Systeme eingesetzt.

Zur Zeit wird ReiserFS in der Version 3 vom Linux-Kernel vollständig unterstützt. Für FreeBSD gibt es eine experimentelle Unterstützung, bisher nur für Leseoperationen. Kommerzielle Treiber gibt es auch für die Betriebssysteme von Microsoft. Version 4

ReiserFS, Version 3

Das ReiserFS aller Versionen 3.x basiert auf der von Rudolf Bayer entwickelten Datenstruktur des B*-Baums, einer Weiterentwicklung des nach Bayer benannten Bayer-Baums. Zusätzlich wird im ReiserFS ein Journal geführt. Anfangs war ein Nachteil von ReiserFS gegenüber anderen Journaling-Systemen, dass das Journaling nur für die Metainformationen, d. h. für die Verzeichnisse und Verwaltungssektoren, nicht jedoch für die Nutzdaten in den Dateien selbst angewendet wurde. Dies wurde inzwischen behoben; das Journaling von Nutzdaten lässt sich nun mit der mount-Option data=journal aktivieren.

ReiserFS, Version 4

ReiserFS in der Version 4, häufig auch als Reiser4 bezeichnet, stellt eine vollständige Neuentwicklung dar. So wird eine Abwandlung der B*-tree-Struktur verwendet, so genannte „Dancing Trees“. Der Hauptunterschied besteht darin, dass unzureichend gefüllte Knoten nicht bei jeder Modifikation des Baumes verschmolzen werden, sondern nur dann, wenn durch Speicherknappheit ein Zurückschreiben auf den Festspeicher gefordert wird oder eine Transaktion abgeschlossen wurde.

Des Weiteren wurde eine flexible Plugin-Struktur hinzugefügt, durch die besondere Metadaten-Typen, Verschlüsslung und Komprimierung realisert werden kann.

Grundlegende ReiserFS-Funktionen

Vorteile gegenüber anderen Dateisystemen bietet ReiserFS vor allem bei der Handhabung von vielen kleinen Dateien, da diese in den Verwaltungsknoten gespeichert werden können. Das bedeutet, dass die Dateien im Dateisystem weniger Platz belegen und der Platz auf der Festplatte effektiver genutzt werden kann.

Folgende Funktionalitäten sind für das ReiserFS implementiert:

  • mkreiserfs
Mit diesem Programm wird ein ReiserFS erzeugt.
  • reiserfsck
Mit diesem Programm kann die Dateizuordungsstruktur des ReiserFS geprüft werden.
  • resize_reiserfs
Mit diesem Programm kann nachträglich ein bestehendes ReiserFS in der Größe variiert werden.
  • reiserfstune
Mit diesem Programm können verschiedene Eigenschaften zusätzlich gesteuert werden, die spezielle Anwendungen optimieren helfen.
  • debugreiserfs
Dieses Programm ist ein Analysetool.
  • Mount options
Verschiedene Optionen ergänzen das LINUX-mount-Kommando, die verschiedene Eigenschaften des ReiserFS aktivieren.

Siehe auch

Weitere moderne Dateisysteme:

  • ext3 (weiterentwickelte Variante von ext2 mit journaling)
  • JFS (Journaled File System von IBM)
  • XFS (ein weiteres journaling Dateisystem von SGI)
  • GNOME Storage (Datenbank-basierendes Dateisystem)
  • NTFS (Journaling-Dateisystem von Windows NT und Nachfolgern)
  • WinFS (für die Zukunft angekündigtes Datenbank-basierendes Dateisystem)