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.

 Wiederherstellungsmodus Fsck
Wiederherstellungsmodus fsck

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.

 Startkernelparameter
Startkernelparameter

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
 Nvme-Partitionen
NVMe-SSD-Partitionen
 SATA-SSD-Partitionen
SATA-SSD-Partitionen

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

  1. Halten Sie beim Booten die Taste SHIFT gedrückt, um in das GRUB-Menü zu gelangen.
  2. Drücken Sie e, um den Boot-Eintrag zu bearbeiten
  3. Fügen Sie den Kernel-Parameter als ‘break‘ hinzu, wie im Screenshot unten gezeigt
  4. Drücken Sie Ctrl - X, um zu speichern und zu beenden
 In Initramfs eingeben
In Initramfs eingeben

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>
 Initramfs Fschk
Initramfs Fsck

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'
 Auf Fsck prüfen 1
Auf Fsck prüfen
  • 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*
 Verschiedene Fscks
Auflistung aller fscks

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