Reparatur Dateisystem: Unterschied zwischen den Versionen

Aus lugvswiki
Zur Navigation springenZur Suche springen
 
(20 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
<!-- Reparatur Dateisystem unter Linux-->
+
<!-- Reparatur Dateisystem unter Linux, korrumpiertes Dateisystem, Dateisystem Korruption, korruptes Dateisystem, Shortcut, Tastenkombination, Magic SysRQ, Einfrieren PC, Einfrieren Laptop, kontrolliertes Herunterfahren ohne Datenverlust-->
=='''Reparatur eines korrumpierten Dateisystems==
+
=='''Reparatur eines korrumpierten (beschädigten und nicht mehr einbindbaren) Dateisystems'''==
 
<br />
 
<br />
  
Zeile 9: Zeile 9:
 
Aber der PC reagierte nach dem Anmelden sehr langsam und hing schließlich ganz.
 
Aber der PC reagierte nach dem Anmelden sehr langsam und hing schließlich ganz.
  
Tipp:
+
'''Tipp:'''
In so einem Fall klappt es meistens ohne einen kalten Reset, indem man folgende Tastenkombinationen anwendet:
+
In so einem Fall klappt es meistens ohne einen kalten Reset, indem man folgende Tastenkombinationen (Magic SysRQ [https://de.wikipedia.org/wiki/Magische_S-Abf-Taste Magische S-Abf-Taste - Wikipedia])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''' 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  --> "un'''r'''aw = Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur
 
* (Alt- UND Druck-Taste sind weiterhin gedrückt): '''R''' drücken  --> "un'''r'''aw = Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur
 
* (Alt- UND Druck-Taste sind weiterhin gedrückt): '''E''' drücken --> t'''e'''rm = Sendet ein '''SIGTERM''' an alle Prozesse außer "init"
 
* (Alt- UND Druck-Taste sind weiterhin gedrückt): '''E''' drücken --> t'''e'''rm = Sendet ein '''SIGTERM''' an alle Prozesse außer "init"
Zeile 21: Zeile 21:
  
 
===Ermittlung der Festplatte und der betroffenen Partition und des Dateisystems, mit dem sie formatiert ist===
 
===Ermittlung der Festplatte und der betroffenen Partition und des Dateisystems, mit dem sie formatiert ist===
 
+
Wenn ich nun auf meine Festplatte (in diesem Fall eine Platte, auf der nur Daten liegen) zugreifen will, muss ich stets ein Passwort eingeben - so gewollt).
 +
Die Platte ließ sich aber nicht ansprechen; die Fehlermeldung meines Dateimanagers (Dolphin) lautete:
 +
"Beim Zugriff auf "DATEN" ist ein Fehler aufgetreten, die Meldung lautet: Die angegebenen Operation ist fehlgeschlagen: Error mounting /dev/sda1 at /run/media/holger/DATEN1: cannot mount; probably corruptet filesystem on /dev/sda1"
 +
Eigentlich steht die Platte samt deren betroffene Partition schon fest, wie obige Fehlermeldung des Dateimanagers Dolphin beim Einbindeversuch aussagt. Mit dem Dateimanager lässt sie sich nicht mehr einbinden (mounten). Sicherheitshalber überprüfen wir noch einmal die betroffene Platte und deren Partition:
 
  $ sudo blkid
 
  $ sudo blkid
 
  [sudo] Passwort für holger:  
 
  [sudo] Passwort für holger:  
Zeile 27: Zeile 30:
 
  '''/dev/sda1''': LABEL="DATEN" UUID="93279354-b851-48a3-bddf-1b73fc632b5f" BLOCK_SIZE="4096" '''TYPE="ext4"''' PARTLABEL="2TB_DATEN" PARTUUID="fffeb90e-0725-11eb-818e-ed0fef3c7d45"
 
  '''/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). Dabei sagen die Informationen folgendes aus:
+
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 sd'''a''' mit Partition '''1'''
 
* '''/dev/sda1''' = Festplatte sd'''a''' mit Partition '''1'''
 
* '''TYPE="ext4"''' = diese Partition ist mit dem EXT4-Dateisystem formatiert
 
* '''TYPE="ext4"''' = diese Partition ist mit dem EXT4-Dateisystem formatiert
  
===Gegebenheiten und Hintergrund===
+
===Reparatur der betreffenden Festplatte, genauer, der betroffenen Partition===
Konsolenbefehl zur Abfrage der Soft- und Hardwarekomponenten:
+
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/sd'''a1''': dies ist der Pfad der Festplatte, welche als korrumpiert / beschädigt erkannt wurde; der Dateipfad muss natürlich an Dein System angepasst werden!
 +
 
 +
===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:~>
  
[$] holger@holger-MS-7758:~> inxi -Fz
+
Nach Eingabe des Befehls muss zuerst einmal das Sudo-Passwort (unsichtbar) eingegeben werden, dann erhalten wir die Meldung, dass ein Defekt vorliegt und werden gefragt, ob wir eine Reparatur wünschen; "Y" steht für "Ja" (bitte reparieren). Wir drücken das Ypsilon "Y" und in aufeinanderfolgenden Durchgängen wird die Platte überprüft und repariert.
<ref>Meine Hardware
+
So sah das bei mir aus; die Reparatur der 2TB-Platte war innerhalb von Sekunden beendet; es war ja auch nur ein Prozent betroffen von der Datenkorruption ... :-)
;System:    holger@holger-MS-7758:~> inxi -Fz
+
Danach konnte ich - ohne Neustart - wieder auf die Daten der Festplatte zugreifen; die Festplatte ließ sich wieder mounten.
: Kernel: 5.10.16-1-default x86_64
 
: bits: 64
 
: Desktop: KDE Plasma 5.21.1
 
: Distro: openSUSE Tumbleweed 20210302
 
;Machine: 
 
: Type: Desktop
 
: Motherboard: MSI
 
: model: Z77A-G41 (MS-7758)  
 
: v: 3.0
 
: serial: <filter>
 
: UEFI: American Megatrends
 
: v: 2.13
 
: date: 03/07/2014
 
;CPU:     
 
: Topology: Dual Core
 
: model: Intel Core i3-3220
 
: bits: 64
 
: type: MT MCP
 
: L2 cache: 3072 KiB
 
: Speed: 1600 MHz
 
: min/max: 1600/3300 MHz
 
: Core speeds (MHz):
 
::: 1: 1600
 
::: 2: 1600
 
::: 3: 1600
 
::: 4: 1600
 
;Graphics:  
 
: Device-1: Intel Xeon E3-1200 v2/3rd Gen Core processor Graphics
 
:: driver: i915
 
:: v: kernel
 
: Device-2: Advanced Micro Devices [AMD/ATI] Cape Verde XT [Radeon HD 7770/8760 / R7 250X]
 
:: driver: radeon
 
:: v: kernel
 
: Device-3: Cubeternet GL-UPC822 UVC WebCam
 
:: type: USB
 
:: driver: uvcvideo
 
: Display:
 
:: x11
 
:: server: X.org 1.20.10
 

Aktuelle Version vom 21. April 2024, 21:13 Uhr

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 (Magic SysRQ Magische S-Abf-Taste - Wikipedia)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

Wenn ich nun auf meine Festplatte (in diesem Fall eine Platte, auf der nur Daten liegen) zugreifen will, muss ich stets ein Passwort eingeben - so gewollt). Die Platte ließ sich aber nicht ansprechen; die Fehlermeldung meines Dateimanagers (Dolphin) lautete:

"Beim Zugriff auf "DATEN" ist ein Fehler aufgetreten, die Meldung lautet: Die angegebenen Operation ist fehlgeschlagen: Error mounting /dev/sda1 at /run/media/holger/DATEN1: cannot mount; probably corruptet filesystem on /dev/sda1" 

Eigentlich steht die Platte samt deren betroffene Partition schon fest, wie obige Fehlermeldung des Dateimanagers Dolphin beim Einbindeversuch aussagt. Mit dem Dateimanager lässt sie sich nicht mehr einbinden (mounten). Sicherheitshalber überprüfen wir noch einmal die betroffene Platte und deren Partition:

$ 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; der Dateipfad muss natürlich an Dein System angepasst werden!

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:~>

Nach Eingabe des Befehls muss zuerst einmal das Sudo-Passwort (unsichtbar) eingegeben werden, dann erhalten wir die Meldung, dass ein Defekt vorliegt und werden gefragt, ob wir eine Reparatur wünschen; "Y" steht für "Ja" (bitte reparieren). Wir drücken das Ypsilon "Y" und in aufeinanderfolgenden Durchgängen wird die Platte überprüft und repariert. So sah das bei mir aus; die Reparatur der 2TB-Platte war innerhalb von Sekunden beendet; es war ja auch nur ein Prozent betroffen von der Datenkorruption ... :-) Danach konnte ich - ohne Neustart - wieder auf die Daten der Festplatte zugreifen; die Festplatte ließ sich wieder mounten.