fsck

Funktion

fsck steuert als Front-End die Prüfung und Reparatur aller Linux-Dateisysteme

Syntax

fsck [-AVRTNPs] [-t Typ] [Optionen] Dateisystem

Beschreibung

fsck ist das von den verschiedenen Linux-Dateisystemen unabhängige Front-End zum Prüfen und Reparieren der Dateisystem-Struktur.

Als Front-End übernimmt fsck die Arbeit am konkreten Dateisystem nicht selbst, sondern ruft das spezifische File-System-Check-Programm für das angegebene Dateisystem auf. Die Zuordnung eines Dateisystemtyps zu einer bestimmten Partition findet über die Datei /etc/fstab oder durch eine Kommandozeilenoption statt.

Als Kommandozeilenargument kann das zu prüfende Dateisystem entweder als Gerätedatei oder durch seinen Aufsetzpunkt (mount point) angegeben werden. Im Fall der Angabe durch den Aufsetzpunkt muß die Verknüpfung mit einer bestimmten Partition in der Datei /etc/fstab festgelegt sein.

Nach den eigenen Optionen erlaubt das fsck-Front-End die Übergabe weiterer Optionen, die an das spezifische File-System-Check-Programm weitergegeben werden. Die Optionen -a, -l, -r, -s und -v werden von den meisten dieser Programme unterstützt, Einzelheiten finden Sie bei den entsprechenden Kommandobeschreibungen.

Um sie automatisch aufrufen zu können, erwartet das fsck-Front-End die spezifischen File-System-Checker unter Namen der Art fsck.Typ, also beispielsweise fsck.ext2 für Extended-2-Dateisysteme oder fsck.minix für ,,alte`` Minix-Dateisysteme. Der File-System-Standard sieht das Verzeichnis /sbin als Installationsverzeichnis für all diese Programme vor. Das fsck-Front-End sucht aber auch in den Verzeichnissen /etc/fs und /etc nach den Programmdateien.

Der Name fsck für das Front-End leitet sich Unix-typisch aus der von Vokalen befreiten Abkürzung für file system check ab. Zu Beginn der Linux-Entwicklung gab es als einziges das von Minix übernommene Dateisystem, deshalb hat das Kommando zur Prüfung eines Minix-Dateisystems ursprünglich den Namen fsck gehabt. Mit der Einführung des Front-Ends muß das alte fsck seinen angestammten Namen zugunsten der einheitlichen Namenskonvention abgeben.

Um die Zusammenarbeit mit anderen Programmen zu erleichtern, gibt das fsck-Front-End über den Exit-Status verschiedene Informationen zum Zustand des Dateisystems und zur Programmausführung weiter:

0
Es wurde kein Fehler im Dateisystem gefunden.
1
Es wurden Fehler im Dateisystem gefunden und korrigiert.
2
Es wurden schwerwiegende Fehler im Dateisystem gefunden und korrigiert. Das System sollte rebootet werden.
4
Es wurden Fehler im Dateisystem gefunden, aber nicht korrigiert.
8
Es ist ein Fehler bei der Programmausführung aufgetreten.
16
Falsche Benutzung (Fehler in der Kommandozeile?).
128
Es ist ein Fehler in einer Funktion der Shared-Libraries aufgetreten.

Diese Fehlercodes können beispielsweise in einem rc-Shellscript zur Systeminitialisierung abgefragt werden, um damit den weiteren Ablauf des Programms zu bestimmen. Wenn mit der Option -A mehrere Dateisysteme geprüft werden, ist der Status des fsck-Front-Ends die logische ODER-Verknüpfung aller Rückgabewerte der einzelnen File-System-Checker.

Optionen

-A
(All) veranlaßt fsck, alle in der Datei /etc/fstab aufgeführten Linux-Dateisysteme zu prüfen; diese Option schließt die Option -t zur direkten Angabe eines Dateisystemtyps aus, stattdessen werden die Typen aus der fstab gelesen
-R
zusammen mit der Option -A wird das Rootfilesystem nicht geprüft (sinnvoll wenn es schon read-write gemountet ist)
-T
unterdrückt die Ausgabe des Programmnamens (Titel) beim Starten
-N
es wird nur angezeigt, was fsck ohne diesen Schalter machen würde
-P
zusammen mit der Option -A wird das Rootfilesystem parallel zu den übrigen Partitionen geprüft (unsicher!)
-V
veranlaßt fsck, Informationen über den Programmverlauf auszugeben; wenn diese Option mehr als einmal angegeben ist, werden die spezifischen File-System-Checker nicht wirklich ausgeführt
-s
verhindert die parallele Prüfung mehrerer Partitionen
-t Typ
spezifiziert den Dateisystemtyp der zu prüfenden Partition; wenn diese Option nicht angegeben ist, versucht das fsck-Front-End, den Typ aus der Datei /etc/fstab zu bestimmen