Reiser File System
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 |
Das ReiserFS ist ein Mehrzweck-Dateisystem, kommerziell unter GPL entwickelt und realisiert von einer Gruppe um Hans Reiser unterstützt von mp3.com und der SuSE GmbH. ReiserFS ist das erste Journaling-Dateisystem, das im Betriebssystem Linux 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 vom Betriebssystem Linux 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.
ReiserFS, Grundsätzliches
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 Journaling 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.
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 RaiserFS geprüft werden.
- resize_reiserfs
- Mit diesem Programm kann nachträglich ein bestehendes RaiserFS 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 RaiserFS aktivieren.
Reiser4: neue Eigenschaften
Beim neueren ReiserFS der Version 4 (kurz Reiser4) 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.
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)
Weblinks
- Gerson Kurz: ReiserFS Dateisystemstruktur (engl.)
- Florian Buchholz: Die Struktur des Reiser Dateisystems (engl.)
- ReiserDriver – ReiserFS-Treiber für Windows 2000/XP/2003