Journaling Filesysteme unter Linux
Verfügbarkeit
[
Seminar Linux und Apache ] ... [
Inhaltsübersicht ] ... [
Fazit ]
Übersicht
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)
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!
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
- linux-2.4-xfs-1.0.patch.gz
- linux-2.4.2-core-xfs-1.0.patch.gz
- linux-2.4.2-kdb-04112001.patch.gz
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:
- modutils-2.4.0
- autoconf-2.13
- e2fsprogs-devel-1.18
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
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
[
Seminar Linux und Apache ] ... [
Inhaltsübersicht ] ... [
Fazit ]