Wie verwende ich den Befehl fsck unter Linux?
Der Befehl fsck
(file System consistency check) ist ein Dienstprogramm zum Überprüfen und Reparieren eines Linux-Dateisystems. Moderne Dateisysteme mit Journaling sind so konzipiert, dass Tools wie fsck nicht ohne weiteres erforderlich sind. In einigen Fällen ist fsck jedoch möglicherweise die einzige Option, um ein fehlerhaftes Dateisystem zu reparieren.
fsck
kann auf einer Partition ausgeführt werden, die beschädigt oder inkonsistent mit dem Rest des Dateisystems ist.
Gründe, warum fsck erforderlich sein kann
- Unreine Haut – Das ist die Hauptursache für Korruption. Aufgrund eines ‘unsauberen Herunterfahrens’ kann das System nicht einmal richtig booten
- Laufwerksfehler oder Beschädigung
Inhaltsverzeichnis
Umgebungen, in denen Sie fsck
NICHT verwenden sollten Da der Befehl direkt mit den Sektoren des Dateisystems arbeitet, ist es wichtig, hier die erforderlichen Vorsichtsmaßnahmen zu treffen.
Die Manpage von e2fsck sagt:
Beachten Sie, dass es im Allgemeinen nicht sicher ist, e2fsck auf gemounteten Dateisystemen auszuführen. Die einzige Ausnahme ist, wenn die Option -n angegeben ist und die Optionen -c, -l oder -L nicht angegeben sind. Selbst wenn dies sicher ist, sind die von e2fsck ausgegebenen Ergebnisse nicht gültig, wenn das Dateisystem gemountet ist. Wenn e2fsck fragt, ob Sie ein eingehängtes Dateisystem überprüfen sollen oder nicht, lautet die einzig richtige Antwort “Nein”.
https://www.man7.org/linux/man-pages/man8/e2fsck.8.html
Sie müssen also fsck
auf einer nicht gemounteten Partition ausführen. Wenn Sie die Partition mit umount
aushängen können, gut und gut. Andernfalls müssen Sie Ihre Umgebung ändern:
1. Wiederherstellungsmodus
(Für Ubuntu – Halten Sie beim Booten SHIFT
gedrückt, um GRUB aufzurufen, wählen Sie ‘Erweiterte Optionen für Ubuntu’, dann die Option ‘Wiederherstellungsmodus’ und dann fsck). Im Wiederherstellungsmodus werden die Partitionen gemountet.
2. Bei Verwendung von init=/bin/bash kernel parameter
(Halten Sie beim Booten SHIFT
gedrückt, um in GRUB einzutreten, und drücken Sie e
, um die Kernel-Parameter zu bearbeiten). Es bietet eine Bash-Shell, von der aus fsck
ausgeführt werden kann, aber auch hier werden die Partitionen gemountet.
Wie verwende ich den Befehl fsck?
Nachdem die Grundlagen geklärt sind, gehen wir zu den Schritten über, wie Sie den Befehl fsck unter Linux verwenden sollten.
1. Grundlegende Verwendung von
Bevor Sie mit der Verwendung des Befehls beginnen, stellen Sie sicher, dass Sie an einer nicht gemounteten Partition arbeiten. Um eine Partition auszuhängen und dann fsck darauf auszuführen, geben Sie Folgendes ein :
$ sudo umount /dev/<partition_name>$ fsck /dev/<partition_name>
Wahrscheinlich können Sie die Partition nicht aushängen. In diesem Fall können Sie eine der folgenden Methoden wählen.
2. Ausführen von fsck mit einem Live-USB
Dies ist wahrscheinlich der beste Weg, um fsck
auszuführen. Es bietet eine Vielzahl bekannter Tools wie fdisk
. Verwenden Sie dieses Tutorial, um einen Live-Ubuntu-USB zu erstellen. In diesem Teil wird davon ausgegangen, dass Sie Linux von einem Live-USB ausführen.
Um alle Partitionen auf Ihrem System aufzulisten, können Sie den Befehl fdisk
verwenden.
$ sudo fdisk -l
Hinweis: Die oben gezeigten Partitionen (für 2 SSDs, eine NVMe und andere SATA) können sich von denen auf Ihrem System unterscheiden. fdisk druckt auch mehr Informationen über die Partitionen. Für die Zwecke dieses Artikels ist jedoch der Name der Partition ausreichend.
Partition identifizieren, die Probleme verursacht, dann einfach ausführen:
$ fsck /dev/<partition_name>
Dies sollte das Problem beheben.
3. Verwenden von initramfs
Eine andere Möglichkeit, den Befehl fsck zu verwenden, ist im ntfs-Modus. Um in initramfs
- Halten Sie beim Booten die Taste
SHIFT
gedrückt, um in das GRUB-Menü zu gelangen. - Drücken Sie
e
, um den Boot-Eintrag zu bearbeiten - Fügen Sie den Kernel-Parameter als ‘
break
‘ hinzu, wie im Screenshot unten gezeigt - Drücken Sie
Ctrl - X
, um zu speichern und zu beenden
initramfs
bietet eine ‘weniger verlockend’ Art der Fehlerbehebung.
Die Partitionen sind nicht in initramfs gemountet, daher wäre die Ausführung von fsck
sicher. Außerdem benötigen Sie den Namen der Partition. Initramfs bietet jedoch ein Minimum an Dienstprogrammen. Also wird fdisk
nicht verfügbar sein. Sie können die Partitionen mit dem Befehl cat wie unten gezeigt auflisten:
$ cat /proc/partitions
Identifizieren Sie die Partition und führen Sie dann:
$ fsck /dev/<partition_name>
Hinweis: fsck mit Live-USB ist möglicherweise nicht immer verfügbar. Verwenden Sie in einem solchen Fall die initramfs-Methode.
So prüfen Sie, ob fsck geplant ist oder nicht
Vielleicht möchten Sie wissen, wann Ihre Partition das letzte Mal überprüft wurde oder wann dies in Zukunft der Fall sein wird. In diesem Fall führen Sie:
$ sudo tune2fs -l /dev/<partition_name> | egrep -i 'check|mount'
- Maximum mount count ist die Anzahl der Mounts, nach denen das Dateisystem automatisch von fsck überprüft wird.
- Prüfintervall ist die Zeit zwischen zwei Dateisystemprüfungen.
Diese beiden Werte reichen aus, um festzustellen, wann der Befehl fsck zuletzt ausgeführt wurde.
Unterschied zwischen fsck und e2fsck
Möglicherweise finden Sie verschiedene Antworten / Artikel, in denen Sie aufgefordert werden, e2fsck oder fsck auszuführen.ext4 statt fsck. Welchen Unterschied macht es, wenn Sie eines dieser Tools anstelle von fsck
ausführen?
fsck
ist nur ein Frontend für alle dateisystemspezifischen fsck-Befehle wie die beiden oben gezeigten (ein Wrapper, wenn Sie sagen könnten). Das Aufrufen von fsck
ruft automatisch das korrekte dateisystemspezifische fsck
auf. Mal sehen, welche alle fsck
auf unserem System vorhanden sind:
$ ls -l /sbin/fsck*
Wenn Sie fsck
auf einer ext2 /3 /4-Partition ausführen, wird die entsprechende ausführbare Datei /sbin/fsck.ext*
ausgeführt. Diese ausführbaren Dateien sind wiederum harte Links zur ausführbaren Datei e2fsck
. Selbst wenn Sie also fsck
auf einer ext4-Partition ausführen, wird letztendlich e2fsck
ausgeführt.
Fazit
In diesem Tutorial haben wir fsck
behandelt, ein nützliches Tool zur Wiederherstellung von Dateisystemen. Weitere Informationen zum Befehl fsck
finden Sie auf der Manpage.
Leave a Reply