Reparatur Dateisystem
Reparatur eines korrumpierten (beschädigten und nicht mehr einbindbaren) Dateisystems
Vorgeschichte
Vermutlich wegen eines "kalten" Resets meines PC wurde bei einer meiner fünf internen Platten das Dateisystem beschädigt. Der Grund für den unüberlegten Reset (Ein- / Aus-Taste gedrückt, bis PC herunterfuhr) war, weil ich drei Bildschirme angeschlossen habe. Zuvor waren es nur zwei und diese liefen über die interne Grafikkarte.
Nachdem ich eine gebrauchte externe Grafikkarte installiert hatte, und alle drei Monitore an diese angeschlossen waren, hatte ich auf keinem der Bildschirme eine Ausgabe. Nachdem ich dann einen wieder an die interne Grafikkarte angeklemmt hatte, waren auf einmal alle drei Bildschirme wieder aktiv. Aber der PC reagierte nach dem Anmelden sehr langsam und hing schließlich ganz.
Tipp: In so einem Fall klappt es meistens ohne einen kalten Reset, indem man folgende Tastenkombinationen anwendet:
- Alt- und Druck-Taste zusammen gedrückt halten (während danach die weiteren Tasten zusätzlich, eine nach der anderen, gedrückt werden)
- (Alt- UND Druck-Taste sind weiterhin gedrückt): R drücken --> "unraw = Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur
- (Alt- UND Druck-Taste sind weiterhin gedrückt): E drücken --> term = Sendet ein SIGTERM an alle Prozesse außer "init"
- (Alt- UND Druck-Taste sind weiterhin gedrückt): I drücken --> kill = Sendet ein SIGKILL an alle Prozesse außer "init"
- (Alt- UND Druck-Taste sind weiterhin gedrückt): S drücken --> sync = Schreibt alle noch nicht auf die Festplatte geschriebenen Daten aus dem Kernel-Festplatten-Cache auf die Festplatten
- (Alt- UND Druck-Taste sind weiterhin gedrückt): U drücken --> umount = Alle eingehängten Partitionen werden ausgehängt, und danach nur lesbar eingehängt
- (Alt- UND Druck-Taste sind weiterhin gedrückt): B drücken --> reboot = Fährt den Rechner sofort herunter, ohne Daten aus dem Kernel-Festplatten-Cache auf die Festplatten zu schreiben und ohne Partitionen auszuhängen, und startet den Rechner neu.
Ermittlung der Festplatte und der betroffenen Partition und des Dateisystems, mit dem sie formatiert ist
Eigentlich steht die Platte schon fest, denn mit dem Dateimanager lässt sie sich nicht mehr einbinden (mounten). Wichtig ist aber, dass wir auch die betroffenen Partition kennen!
$ sudo blkid [sudo] Passwort für holger:
...
/dev/sda1: LABEL="DATEN" UUID="93279354-b851-48a3-bddf-1b73fc632b5f" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="2TB_DATEN" PARTUUID="fffeb90e-0725-11eb-818e-ed0fef3c7d45"
Die betreffende Festplatte und deren Partition und des Dateisystems, mit dem sie formatiert ist, ist oben fett hervorgehoben (die anderen im PC installierten Festplatten interessieren hier nicht und wurden weggelassen). Dabei sagen die Informationen folgendes aus:
- /dev/sda1 = Festplatte sda mit Partition 1
- TYPE="ext4" = diese Partition ist mit dem EXT4-Dateisystem formatiert
Reparatur der betreffenden Festplatte, genauer, der betroffenen Partition
Konsolenbefehl zur Reparatur der korrumpierten Festplattenpartition:
[$] $ sudo fsck.ext4 /dev/sda1
Erklärung:
- sudo: zur Ausführung des Befehls sind Adminrechte erforderlich
- Leerzeichen: Trennt "sudo" vom Reparaturbefehl (fsck.ext4)
- "fsck.ext4" = der erste (fett formatierte Teil) ist der Reparaturbefehl an sich
- "fsck.ext4" = dieser (zweite) Teil des Befehls ist der Parameter; in diesem Fall sagt er dem Reparaturbefehl, dass er mit einem EXT4-Dateisystem arbeitet. Bei einem Btrfs-Dateisystem würde er dann "fsck.btrfs" lauten ...
- Leerzeichen: trennt den Befehl vom Dateipfad, der repariert werden soll
- "/dev/sda1: dies ist der Pfad der Festplatte, welche als korrumpiert / beschädigt erkannt wurde
Reparatur durchführen
Das geschieht textbasiert im Terminal (Konsole). Wir kopieren obigen Befehl in die Konsole (entweder per Maus markieren und dann mittels Mittelklick ins Terminalfenster einfügen, oder aber markieren, Strg+C und dann mit Umschalt+Strg+V in die Konsole hineinkopieren:
$ sudo fsck.ext4 /dev/sda1 (natürlich muss der Pfad zur Platte und deren Partition abgeändert werden!) [sudo] Passwort für holger: e2fsck 1.47.0 (5-Feb-2023) Der Journal-Superblock ist defekt. Reparieren<jy>? ja Durchgang 1: Inodes, Blöcke und Größen werden geprüft Durchgang 2: Verzeichnisstruktur wird geprüft Durchgang 3: Verzeichnisverknüpfungen werden geprüft Durchgang 4: Referenzzähler werden überprüft Durchgang 5: Zusammengefasste Gruppeninformation wird geprüft DATEN: ***** DATEISYSTEM WURDE VERÄNDERT ***** DATEN: 251197/122093568 Dateien (1.0% nicht zusammenhängend), 230305089/488345611 Blöcke holger@linux:~>
So sah das bei mir aus; die Reparatur der 2TB-Platte war innerhalb von Sekunden beendet. :-) Danach konnte ich - ohne Neustart - wieder auf die Daten der Festplatte zugreifen; die Festplatte ließ sich wieder mounten.