• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[Solved] RAID - fsck failed with errorcode 4

dma67

Hacker
Hallo liebe Gemeinde,

heute ist zwar Sonntag, aber vielleicht erbarmt sich einer...

Nach einem Reboot gestern, kann ich mein System nicht zum Leben erwecken.
Jetzt bin ich auf dem Live-System und versuche auf die Daten zuzugreifen.

Erstmal die Situation
Code:
linux:/home/linux # cat /proc/mdstat
Personalities : [raid10] 
md124 : active raid10 sda1[0] sdb1[1]
      976760672 blocks super 1.0 2 near-copies [2/2] [UU]
      bitmap: 0/466 pages [0KB], 1024KB chunk

md0 : active raid10 sdc3[0] sde3[1]
      46138272 blocks super 1.0 2 near-copies [2/2] [UU]
      bitmap: 0/1 pages [0KB], 65536KB chunk

md125 : active (auto-read-only) raid10 sde4[2] sdc4[0]
      576784224 blocks super 1.0 2 near-copies [2/2] [UU]
      bitmap: 0/5 pages [0KB], 65536KB chunk

md126 : active raid10 sdh1[1] sdg1[0]
      976760672 blocks super 1.0 2 near-copies [2/2] [UU]
      bitmap: 1/466 pages [4KB], 1024KB chunk

md127 : active raid10 sdd1[3] sdf1[2]
      625130336 blocks super 1.0 2 near-copies [2/2] [UU]
      bitmap: 3/299 pages [12KB], 1024KB chunk

unused devices: <none>

Ich habe vier Partitionen mit RAID:
- /
- /home
- /srv
- /multimedia
- /vm
Was Probleme macht ist die Partition 'home'. Starte ich das System wie gehabt, endet das Booten mit dem Fehler
Code:
fsck failed with errorcode 4

Nun habe ich eine LIVE-CD angeworfen. Die RAIDS scheinen alle OK.
Alle kann ich mounten und die Daten sehen, bis auf die /home (hier als md125), die nur als auto-read-only sichtbar ist.

Frage 1:
Wie kann ich wenigstens lesend mounten, um die Daten von home zu retten?

Frage 2
Wie werde ich das Problem mit dem Error 4, damit das System wie gewohnt startet?


Vieeeeelen Dank im Voraus für Eure Zeit am heutigen Tag.



Zusätzliche Infos

1. RAID scheint komplett in Takt
Code:
linux:/home/linux # mdadm --detail /dev/md125
/dev/md125:
        Version : 1.0
  Creation Time : Wed Nov  9 18:37:53 2011
     Raid Level : raid10
     Array Size : 576784224 (550.06 GiB 590.63 GB)
  Used Dev Size : 576784224 (550.06 GiB 590.63 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Sun Aug 12 11:24:36 2012
          State : active 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 32K


           Name : Phenom940:6
           UUID : 65b5201e:32bf59d2:edf8cdd4:e6f90408
         Events : 99708

    Number   Major   Minor   RaidDevice State
       0       8       36        0      active sync   /dev/sdc4
       2       8       68        1      active sync   /dev/sde4

2.
Führe ich
Code:
fsck /dev/md125
aus, bekomme ich
Code:
linux:/home/linux # fsck /dev/md125
fsck von util-linux 2.20.1
e2fsck 1.41.14 (22-Dec-2010)
Die Prüfsumme eines oder mehrerer Gruppe -Deskriptoren ist ungültig.  Repariere<j>? ja

Prüfsumme von Gruppe -Deskriptor 2834 ist ungültig.  REPARIERT.
Prüfsumme von Gruppe -Deskriptor 2848 ist ungültig.  REPARIERT.
Prüfsumme von Gruppe -Deskriptor 3345 ist ungültig.  REPARIERT.
Prüfsumme von Gruppe -Deskriptor 3360 ist ungültig.  REPARIERT.
Prüfsumme von Gruppe -Deskriptor 3361 ist ungültig.  REPARIERT.
/dev/md125 enthält ein fehlerhaftes Dateisystem, Prüfung erzwungen.
Durchgang 1: Prüfe Inodes, Blocks, und Größen
HTREE Verzeichnis Inode 27535875 hat einen unvollständigen root node.
Bereinige HTree-Index<j>?
und dann Millionen Fragen....
Code:
Duplizierte Blocks bereits neu zugeordnet bzw. geklont.

Datei ... (Inode #23855218, Modifikationszeitpunkt Tue Jun 26 13:35:45 2012) 
  hat Block Nr.1 doppelte Block(s), gemeinsam genutzt mit 1 Datei(en):
        ??? (Inode #23855144, mod time Tue Jun 26 13:35:45 2012)
Duplizierte Blocks bereits neu zugeordnet bzw. geklont.

Datei /dma/Dokumente/Hardware/boxy/trunk/make (Inode #23855450, Modifikationszeitpunkt Fri Jul 20 00:06:36 2012) 
  hat Block Nr.1 doppelte Block(s), gemeinsam genutzt mit 1 Datei(en):
        /dma/Dokumente/Hardware/boxy/???/???/make/patches/210-progress_bar-floating_point_exception.squashfs3.patch (Inode #23855610, mod time Wed Aug  1 19:59:00 2012)
multiply claimed block map<j>? ja

Datei ... (Inode #23855453, Modifikationszeitpunkt Tue Jun 26 13:35:45 2012) 
  hat Block Nr.2 doppelte Block(s), gemeinsam genutzt mit 2 Datei(en):
        ??? (Inode #23855591, mod time Tue Jun 26 13:35:45 2012)
        ??? (Inode #23855588, mod time Tue Jun 26 13:35:45 2012)
multiply claimed block map<j>? ja

Datei /dma/Dokumente/Hardware/boxy/???/???/.svn (Inode #23855481, Modifikationszeitpunkt Sat Aug 11 21:54:24 2012) 
  hat Block Nr.1 doppelte Block(s), gemeinsam genutzt mit 1 Datei(en):
        /dma/Dokumente/Hardware/boxy/???/???/make/patches/015-use_python2.mklibs.patch (Inode #23855612, mod time Wed Aug  1 10:45:49 2012)
multiply claimed block map<j>? ja

Datei /dma/Dokumente/Hardware/boxy/???/???/.svn/prop-base/recover-ds.svn-base (Inode #23855528, Modifikationszeitpunkt Fri Jul 20 00:06:21 2012) 
  hat Block Nr.1 doppelte Block(s), gemeinsam genutzt mit 1 Datei(en):
        /dma/Dokumente/Hardware/boxy/???/???/make/patches/.svn/text-base/300-main_makefile.kconfig.patch.svn-base (Inode #23855571, mod time Wed Aug  1 10:45:49 2012)
multiply claimed block map<j>?

was nun?
 

spoensche

Moderator
Teammitglied
Du kannst das RAID-Device mit
Code:
mount -o ro /dev/md125 /mnt
read only mounten.

Ist das Device /dev/md125 eine Festplatte oder eine Partition? Wenn es eine Festplatte ist, dann kannst du fsck nicht auf /dev/md125 anwenden, weil dein eigentliches FS auf der Partition liegt.

Bevor du das RAID writeable machst musst du zu erst das RAID stoppen
Code:
mdadm --stop /dev/md125

Danach kannst du mit
Code:
mdadm --readwrite /dev/md125

das RAID Array schreibar machen und anschließend starten
Code:
mdadm --start /dev/md125
 
A

Anonymous

Gast
Du hast ein mehr oder weniger viele Fehler an verschiedenen Stellen im FS. Der Fehler 4 zeigt an das noch Fehler im System sind und noch nicht alles repariert ist. Was du dort an Meldungen von fsck zeigst sieht noch relativ harmlos aus, jedoch die Verteilung der Block- und Inodenummern lassen noch folgende sehr böse Fehler erwarten, das scheint noch lange nicht alles zu sein. Ein Backup hast du ja notfalls. Soweit zu sehen sind die Dateien wohl auch zu verschmerzen. Ich vermute es hat wenig Zweck zu versuchen es unkorriegiert readonly mounten zu wollen. Dort scheinen zu viele Fehler vorzuliegen.
Ich hoffe nur das Raid ist wirklich in Ordnung nicht das dort doch wahlweise von rechts und links unterschiedlichen Daten gelesen werden. :???:

Du kannst eine Reparatur erzwingen, in dem du alles mit "Ja" bestätigst, oder gleich
Code:
fsck -fy    /dev/md125
ausführst. Wieviel dabei dann aber letztlich endgültig in die ewigen Jagdgründe verschwindet ist so noch nicht vorhersehbar. Auch ein "fsck -n" wird dir in diesem Fall sehr wenig bringen, du kannst nur abschätzen wieviel er in etwa reparieren würde 10000 oder 110000, die Meldungen selbst sind für einen Laien kaum zu interpretieren. Ein vorheriges Erstellen einer Kopie mit dd währe hier nicht die schlechteste Idee.

Wenn du etwas für die Menscheit tun möchtest, ;) und noch eine Platte mit 500GB irgendwo in Reserve hast, kannst du vorher mal folgendes ausprobieren. Vorsicht: absolut neue brandheiße Alphasoftware direkt aus meiner Entwicklerkiste.

einen 2GB oder größeren USB-Stick mit dem hier laut Anweisung dort laden.
Diesen dann booten. mit ALT-CTRL-F2 auf tty2 wechseln und als root (pw linux) anmelden.
Dort dann "e4m-tui" starten. (es gibt vorerst auch nur englische Tastatur)
Modus Disaster Mode.
Dann 2 Raid devices.
Ich kann dir nicht sagen ob es wieder das 125 wird (wenn es in deinem orginal System auch die 125 ist, sollte es auch so werden), notfalls mal nachschauen welches die richtige Größe hat.
Als Ziel dann eine Platte oder ein Linuxfilesystem das noch entsprechend Platz hat, auswählen.

Es wird nur readonly unter Umgehung eines mountes direkt aus den Filesystemdaten gelesen und auf deinem Raid wird nichts verändert.
Enstehen sollte eine Kopie des Dateisystems, die darin enthaltenen Fehler können dabei zum Teil repariert werden( soweit fsck hier nicht schon alle Korrekturen ausgeführt hat und keine offensichtlichen Fehler mehr in den Inodedaten vorliegen), bösartig defekte Stellen in den Filesystemmetadaten werden übersprungen, und wenn Datenblöcke defekt sind, dann werden diese dann an entsprechendere Stelle in den kopierten Dateien natürlich auch defekt sein.

robi
 
OP
dma67

dma67

Hacker
Hallo Robi, ich würde es gern tun, wenn ich die Platte hätte.

Nun habe ich das Problem anders gelöst.
1. Das mounten der Partition md125 unter Live-System hat mit mount -o ro /dev/md125 /mnt problemlos geklappt
2. Dann habe ich die Daten problemlos gesichert
3. Partition md125 komplett neu formatiert
4. /home-Profile zurück kopiert
5. System in init 3 gestartet
6. Rechte gesetzt
System startet wie gewohnt ohne Probleme :)

Keine Ahnung, warum sich fsck so verschluckt hat.
Jedenfalls läuft es jetzt so, als wäre nichts passiert.
 
A

Anonymous

Gast
Kannst du mal bitte in das Verzeichnis schaun wo die Dateien angemeckert worden sind.
Würde mich interessieren was er mit diesen Dateien angestellt hat.
/dma/Dokumente/Hardware/boxy/???/???/make/patches/*

robi
 
OP
dma67

dma67

Hacker
Das lässt sich nicht mehr machen Robi, aber vielleicht eine Erklärung.
Ich habe dieses Verzeichnis als Übeltäter verdächtigt. Warum? Unter /home/dma/Dokumentze/Hardware/boxy habe ich per svn freetz-Skripte ausgecheckt, um dann für Fritzboxem firmware zu bauen. Ich war zu faul, um eine Ubuntu-VM anzuwerfen, wo die gesamte Entwicklungsumgebung bereits vorbereitet ist. Unter Suse lief es auch halbwegs gut, nur musste ich einiges als root ausführen, irgendwas hat es mit fakeroot nicht gestimmt.
Deswegen war ich heilfroh, auf alles andere zugreifen zu können. Nachdem ich die Partition neu formatiert habe, kommt mir das nicht mehr auf die SuSE-Partition. Ich habe es bei der Sicherung der Daten absichtlich weggelassen.

Aber Dein Tool interessiert mich. Alle 6 Monate habe ich einen Emergency-Fall ;-) wo meine RAID-Armada irgendwie versagt. Bis jetzt habe ich noch nichts verloren. Und ich mache sonst keine zusätzlichen Backups.
Werde ich wohl jetzt überlegen müssen, noch Extra-Platte zu holen :???:
 

spoensche

Moderator
Teammitglied
dariuszmarek schrieb:
Aber Dein Tool interessiert mich. Alle 6 Monate habe ich einen Emergency-Fall ;-) wo meine RAID-Armada irgendwie versagt. Bis jetzt habe ich noch nichts verloren. Und ich mache sonst keine zusätzlichen Backups.
Werde ich wohl jetzt überlegen müssen, noch Extra-Platte zu holen :???:

Also min. ein Backup solltest du schon haben.

Alle wollen Restore aber niemand will Backup.
 
Oben