Wie kann fsck nach einem Hardwarefehler behoben werden?

2419
azera

Ich habe ein RAID 5-Array, das mdadm und ext4 als Dateisystem verwendet. Wir haben einen starken Stromstoß bekommen und einer der Antriebe ist defekt, während ein anderer etwas flakky, alias "Klick des Todes", bekommen hat.

Ich habe die Festplatten nacheinander ausgewechselt, zuerst die defekte ersetzt, Resync und dann den fehlerhaften mit einer sauberen Disk und einer weiteren Resynchronisation gelassen. Ich habe jetzt ein vollständiges RAID 5 (3 Laufwerke + 1 Paritätslaufwerk), das einwandfrei läuft.

Mein Problem ist, dass während dieser Resyncs einige Sektoren wahrscheinlich auf dem fehlerhaften Laufwerk ausgefallen sind und ich jetzt einige fehlerhafte Inodes habe. Hier ist ein Beispiel von dem, was ich in / var / log / messages (gentoo) bekomme:

Aug 16 14:16:13 shiva kernel: EXT4-fs error (device md127): ext4_lookup: deleted inode referenced: 270795020 

Die meisten Dateien funktionieren einwandfrei, es gibt nur ungefähr ~ 12 solche Inodes, die auf diese Weise fehlgeschlagen sind, und die Dateien, denen sie entsprechen, scheinen meist sehr kleine nebeneinander zu sein (das Array ist ~ 4 TB groß).

Mein Problem ist jetzt, dass ich meine Festplatte bereinigen möchte, aber ich bin mir nicht sicher, wie das geht. Das Bootup fordert mich auf, eine fsck auszuführen, aber ich weiß nicht, was es genau macht und viele Dinge, die ich im Web lese, machen mir ein wenig Angst :)

Bedenkt, dass:

  1. Das Hardwareproblem ist zu 100% behoben
  2. der größte Teil des Dateisystems funktioniert einwandfrei, nur ein Dutzend Inodes sind geschraubt
  3. Ich möchte das Dateisystem "reparieren", um es wieder normal zu machen
  4. Ich bin in Ordnung mit dem Verlust der wenigen ausgefallenen Dateien (obwohl ich gerne wissen möchte, welche es ist).
  5. wieder, das System bootet / mount einwandfrei, fast jede Datei funktioniert einwandfrei, diejenige, die versagt, ist immer die selbe

Sollte ich fsck auf dem Laufwerk ausführen, um das zu tun? Riskiere ich alles zu verlieren?

Ich weiß, der beste Weg wäre Backup und dann Redo, aber ich kann mir jetzt keine 3TB Backups leisten, nachdem ich gerade zwei neue Laufwerke gekauft habe ... Ich versuche, das Chaos zu beseitigen.

2

1 Antwort auf die Frage

2
Gilles

Ja, Laufen fsckmacht genau das, was Sie wollen. Natürlich kann alles passieren, einschließlich eines Meteoriten, der auf Ihrem Computer landet und alle Ihre Festplatten zerstört. aber wenn etwas läuft, fsckist es sicherer, mit fehlerhaften Dateisystemen weiter zu arbeiten.

Ich empfehle, von einer Rettungs-CD (oder einem USB-Stick) zu booten und fsckvon dort aus zu starten. Wenn Sie sich unwohl fühlen, können Sie mit dem Ausführen beginnen fsck -n, was nicht in das Dateisystem schreibt, sondern Ihnen nur die gefundenen Fehler anzeigt.