Journaling Filesysteme unter Linux

Verfügbarkeit


[ Seminar Linux und Apache ] ... [ Inhaltsübersicht ] ... [ Fazit ]

Übersicht


Allgemeines

In den aktuellen Distributionen sind die neuen Dateisysteme weitestgehend enthalten, so bietet SuSE in der Version 7.3 (vom 13.Oktober 2001) folgende Journaling Filesysteme:
Ext3
ReiserFS
JFS

Für alle anderen gibt es Patches zum Downloaden. Und zwar für den Kernel ab Version
2.2.12 (JFS)
2.2.19 (ReiserFS)
2.2.19 (ext3)
2.4.6 (XFS)

Nach oben

Umstieg von Ext2fs auf Ext3fs

Hier eine kleine Anleitung zum Umstieg von ext2 zu ext3:
(In der neuen Version 7.3 von SuSE ist ext3 bereits enthalten, so dass dort dies nicht notwendig ist!)

Zunächst benötigt man den Patch, der unter
	http://www.uow.edu.au/~andrewm/linux/ext3/
zu finden ist. Dieser Patch wird wie üblich im Kernel eingebunden mit:
	cd /usr/src/linux
	gunzip < ~/ext3-2.4-0.9.6-249.gz | patch -p1
	make menueconfig
Wer den Entwicklern bei evtl. Problemen Diagnoseinformationen schicken will sollte den "JBD debugging support" aktivieren (kostet allerdings etwas Performance). Die Konfiguration abspeichern, den Kernel kompilieren und ins /boot-Verzeichnis kopieren.

Ein Update der "Ext2 Filesystem Utilities" ist dann noch notwendig. Eine neue Version findet man unter
	http://e2fsprogs.sourceforge.net/
und
	ftp://ftp.kernel.org/pub/linux/utils/util-linux/util-linux-2.11h.tar.gz
Das Paket "e2fsprogs" installiert man per
	tar -xvzf e2fsprogs-1.23.tgz
	cd e22fsprogs-1.23
	mkdir build | cd build
	make
	make check
	make install
und die Utils per
	tar -xvzf util-linux-2.11h.tar.gz
	cd util-linux-2.11h
	./configure
	make
	make install
Das Anlegen eines neuen ext3-Dateisystems ist nun recht einfach, denn es kommt im Vergleich zum ext2 nur ein Parameter hinzu:
	mke2fs -j /dev/hdb1
Noch einfacher ist der Umstieg von ext2 auf ext3, und zwar mit
	tune2fs -j /dev/hdb1
Da nun ein Journal verwendet wird ist ein regelmäßiges Überprüfen der Dateisystemstruktur nicht mehr nötig, deshalb kann man diese Funktion mit
	tune2fs -c 0 -i 0 /dev/hdb1
abschalten.
-c steht für count/Anzahl der Mounts
-i steht für Interval/Tage

Beim Mounten gibt man nun -t ext3 an.

Sollte es zu Problemen mit ext3 kommen kann man es einfach mit
	e2fsck -fy /dev/hdb1
wieder abschalten und zu ext2 zurückwechseln!

Nach oben

Installation von XFS

XFS Linux 1.0 ist herausgegeben für den Linux Kernel 2.4, so dass diese Anleitung für den Patch 2.4.2 ist.
Den Patch findet man unter ftp://oss.sgi.com/projects/xfs/download/Release-1.0/patches/. Runterzuladen sind hier folgende Dateien Den Linux-Kernel linux-2.4.2.tar.bz2 in /usr/src kopieren , das Verzeichnis linux umbenennen in linux-old und den Kernel entpacken.
	mv linux linux-old
	tar -Ixf inux-2.4.2.tar.bz2
Die Patch-Dateien in das linux-Verzeichnis (/usr/src/linux) kopieren und einbinden
	zcat patchfile.gz | patch -p1
Dann den Kernel konfigurieren mit der Option "XFS filesystem support" (CONFIG_XFS_FS) und "Page Buffer support" (CONFIG_PAGE_BUF) in der Filesystem-Sektion.

Ausserdem müssen folgende Utilities aktualisiert werden: Danach wird der Kernel installiert und das System neu gestartet.
Nun müssen nochdie xfs_progs_tools (Quelle) installiert werden
	tar -zxf  xfsprogs-1.2.0.src.tar.gz
	cd xfsprogs-1.2.0
	make configure 
	make 
	make install
Nach der Installation kann man ein neues XFS_Dateisystem erzeugen mit:
	mkfs -t xfs /dev/xxx
Ist auf der Partition bereits ein Dateisystem sollte man mit der Option -f sicherstellen, dass dieses überschrieben wird:
	mkfs -t xfs -f /dev/xxx
Es bleibt nun lediglich das mounten:
	mount -t xfs /dev/xxx /mount_dir


Nach oben

Installation von ReiserFS

ReiserFS ist im offiziellen Linux-Kernel ab Version 2.4.1-pre4. Man benötigt immer die Reiser-Tools. (z.B. mkreiserfs um ReiserFS auf einer leeren Partition zu installieren).
Einen aktuellen Patch gibt es für 2.2.x und für 2.4.x - Kernels.

Hier eine Anleitung für den 2.2.19 Kernel.

Zunächst benötigt man den Patch für Kernel 2.2.19 und den Patch für ReiserFS (momentan aktuell der Patch 3.5.34).

Das übliche entpacken, kopieren und installieren:
	tar -Ixf linux-2.2.19.tar.bz2
	bzcat linux-2.2.19-reiserfs-3.5.34-patch.bz2 | patch -p0
Kernel konfigurieren: den ReiserFS-Support in FS-Sektion einschalten.
Kompilieren und installieren der ReiserFS Utilities
	cd /usr/src/linux/fs/reiserfs/utils
	make
	make install
Kernel installieren und System neu starten, dann:
	mkreiserfs /dev/xxxx
und Mounten
	mount -t reiserfs /dev/xxx /mount_dir


Nach oben

[ Seminar Linux und Apache ] ... [ Inhaltsübersicht ] ... [ Fazit ]