Raid0 - 2. Platte "non member disk"

Celestine

Cadet 1st Year
Registriert
Dez. 2010
Beiträge
9
Hallo!

Zuallererst möchte ich meinen grossen Respekt für Ernst@at bekunden - ich finde es toll was du weisst und dass du dieses Wissen unermüdlich an Andere weiter gibst und ihnen so hilfst. Ich mache seit vielen Jahren etwas ähnliches in einem anderen Bereich (www.celestinecommunity.de) und weiss wieviel Freude soetwas bereitet, wie ermüdend das gleichzeitig ist, und wie schön es ist wenn "jemand" diese hilfe nicht als selbstverständlich nimmt.

Bitte lieber "Raid-Guru", nimm dich meines Problems an, ich habe kein Backup.....

Setup:
  • Asus P5W DH Deluxe mit Intel Matrix Storage Manager
  • FakeRaid0 (Intel Matrix Storage Treiber) mit 2x Samsung 250GB
  • Separate SSD
  • Win7 auf SSD, ABER: Userdata auf Raid gelegt (=> Windows bootet nicht mehr)
  • aktuell GRML 4.2010 Linux gebootet vom USB Stick
  • Beide Platten sind mit ddrescue auf ersatzplatten gesichert (keine Lesefehler, also kein HW-Defekt)

Achja, eines vorweg - und bitte KEINE Flames: Es gibt kein "funktionierendes" Backup, BEVOR das Ding hopps gegangen ist.

Ich versuche seit ner Woche eigenständig (&erfolglos) mein Raid0 zu reparieren, dazu kam es als ich nach einem Stromausfall einen SMART-Fehler auf der 2. RAID-Platte hatte. Da ein IMSM (Intel Maxtrix Storage Manager) Array keine Smart-Daten ausgibt, habe ich mir ein entsprechendes DOS-Tool runtergeladen und den SMART Status ausgelesen, was vermutlich dazu geführt hat dass der Superblock von der 2. HDD abgeraucht ist. Mein Problem ist dass ich mit Linux völlig im Dunklen tappe und ich mit Windows grad gar nicht hochfahren kann und auch keine RettungsCD hab.

Erste Aktion war, wie oben erwähnt die beiden Platten mit ddrescue zu sichern, was auch ohne (physikalische) Lesefehler gelang.

Leider kann ich dir auch die in den anderen "Rettungsthreads" gewünschten daten nicht als Screenshot schicken, da ich nicht wirklich weiss wie das in Linux geht und mein Dateisystem auf dem Stick sich bei jedem Runterfahren löscht.

"Eigentlich" müsste man nur den Superblock wieder ersetzen.....

Im Linux ergibt "sudo mdadm -E /dev/sdb" folgendes - das sollte doch alle wichtigen Informationen beinhalten:
PHP:
/dev/sdb:
          Magic : Intel Raid ISM Cfg Sig.
        Version : 1.0.00
    Orig Family : 00000000
         Family : d3b6341c
     Generation : 00001a03
           UUID : 1a4cb3e8:9ccc3eb2:b788ef5e:b7ee6be8
       Checksum : dad13237 correct
    MPB Sectors : 1
          Disks : 2
   RAID Devices : 1

  Disk00 Serial : S09QJ1FL610761
          State : active
             Id : 00000000
    Usable Size : 488392654 (232.88 GiB 250.06 GB)

[Deepthought]:
           UUID : 0da4cf05:3ee482c6:163d12c6:768fb25c
     RAID Level : 0
        Members : 2
      This Slot : 0
     Array Size : 976783360 (465.77 GiB 500.11 GB)
   Per Dev Size : 488391939 (232.88 GiB 250.06 GB)
  Sector Offset : 0
    Num Stripes : 1907780
     Chunk Size : 128 KiB
       Reserved : 0
  Migrate State : idle
      Map State : failed
    Dirty State : clean

  Disk01 Serial : S09QJ1FL610757:0
          State : active failed
             Id : ffffffff
    Usable Size : 488392654 (232.88 GiB 250.06 GB)

"sudo mdadm -E /dev/sdc" ergibt folgendes
PHP:
mdadm: No md superblock detected on /dev/sdc.

"sudo dmraid -R isw_dffbjddegi_Deepthought /dev/sdc" ergibt
PHP:
ERROR: isw: wrong number of devices in RAID set "isw_dffbjddegi_Deepthought" [1/2] on /dev/sdb
Rebuild: raid0 cannot be rebuild


Einen Hexeditor habe ich in Linux auch gefunden. Die ersten Sektoren des Laufwerks /dev/sdb sehen so aus:
PHP:
00000000   33 C0 8E D0  BC 00 7C 8E  C0 8E D8 BE  00 7C BF 00  3.....|......|..
00000010   06 B9 00 02  FC F3 A4 50  68 1C 06 CB  FB B9 04 00  .......Ph.......
00000020   BD BE 07 80  7E 00 00 7C  0B 0F 85 0E  01 83 C5 10  ....~..|........
.... (edit: gekürzt, weil nicht wirklich relevant, siehe weiter unten) .....

Erwartungsgemäss ist dieser Bereich auf /dev/sdc "leer":
PHP:
00000000   00 A9 01 A9  02 A9 03 A9  04 A9 05 A9  06 A9 07 A9  ................
00000010   08 A9 09 A9  0A A9 0B A9  0C A9 0D A9  0E A9 0F A9  ................
00000020   10 A9 11 A9  12 A9 13 A9  14 A9 15 A9  16 A9 17 A9  ................
00000030   18 A9 19 A9  1A A9 1B A9  1C A9 1D A9  1E A9 1F A9  ................
00000040   20 A9 21 A9  22 A9 23 A9  24 A9 25 A9  26 A9 27 A9   .!.".#.$.%.&.'.
00000050   28 A9 29 A9  2A A9 2B A9  2C A9 2D A9  2E A9 2F A9  (.).*.+.,.-.../.
.... (edit: gekürzt, weil nicht wirklich relevant, siehe weiter unten) .....

Zusätzlich habe ich die Sektoren 0x1000000 auf beiden Platten ausgelesen. Ergebnis:

/dev/sdb
PHP:
01000000   67 6F 4B 43  67 6F 4B 43  67 6F 4B 43  67 59 47 42  goKCgoKCgoKCgYGB
01000010   67 6F 47 42  67 59 43 41  67 49 43 42  67 59 47 43  goGBgYCAgICBgYGC
01000020   67 59 4B 43  67 59 47 43  67 6F 4B 44  67 6F 4B 43  gYKCgYGCgoKDgoKC
01000030   67 6F 4B 43  67 34 4F 45  68 49 4F 44  67 34 4F 45  goKCg4OEhIODg4OE
.... (edit: gekürzt, weil nicht wirklich relevant, siehe weiter unten) .....


Auf /dev/sdc sieht es so aus:
PHP:
01000000   41 41 41 41  41 41 41 41  41 41 41 41  41 41 41 41  AAAAAAAAAAAAAAAA
01000010   41 41 41 41  41 41 41 41  41 41 41 41  41 41 41 41  AAAAAAAAAAAAAAAA
01000020   41 41 41 41  41 41 41 41  41 41 41 41  41 41 41 41  AAAAAAAAAAAAAAAA
01000030   41 41 0D 0A  41 41 41 41  41 41 41 41  41 41 41 41  AA..AAAAAAAAAAAA
.... (edit: gekürzt, weil nicht wirklich relevant, siehe weiter unten) .....


Meine Fragen
- Was brauchst du noch?
- Was soll ich tun? und ...
- Bekomme ich die Daten wieder??

Jetzt schon: DANKE!!! für deine Unterstützung
 
Zuletzt bearbeitet:
AW: @Ernst@at: Raid0 - 2. Platte "non member disk"

Leicht verschämt ob der Lobhudelei nehme ich das trotzdem gerne entgegen.
Bin nur leider mit einem anderen Problem eines komplexen RAID5-Fehlers gerade im Infight der vorletzte Runde (14) und inzwischen hat sich schon eine Warteschlange von 3 anderen um Hilfe Heischenden gebildet. Ich kann frühestens Montag damit beginnen, die abzuarbeiten und darf mich im Moment nicht über andere Hex-Ausdrucke beugen, weil ich sonst hier den Faden verliere. Bitte Geduld!...
 
AW: @Ernst@at: Raid0 - 2. Platte "non member disk"

Perfekt & Danke!
=> Wochende PC-frei.
:) freu (:

... dir auch viel Freude bei deinem Tun!

PS: Lobhudelei ist anders. ;)
 
AW: @Ernst@at: Raid0 - 2. Platte "non member disk"

Hallo Ernst,

Ich hatte die Arbeiten an meinem Raid eingestellt, nun "frisst" mich allerdings zum einen die Neugier und zum anderen das Bedürfnis, auf meine Daten wiede zu zu greifen (arbeite nun schon seit über einer Woche nicht mehr mit meinem PC) und habe mich entsprechend weiter eingelesen.

Einige Menschen haben mit "mdadm" Erfolge erzielt indem sie mit "mdadm --zero-superblock" zunächst den Superblock gelöscht und dann das Array (ebenfalls mit mdadm) wieder neu created haben.
Bei einem "einfachen" Stripe-Raid mit 2 Platten sollte dass doch ggf funktionieren, wenn, wie ich denke nur der Superblock einen schaden hat??

Kannst du mal kurz schauen ob anhand der Dumps der potentielle Erfolg/Misserfolg erkennbar ist oder ob du mir eine andere Self-Help Methode empfehlen kannst, die ich probiere bis du Zeit hast und ich so ggf das Problem selber fixen kann?
 
Nachdem die beiden Platten ja keinen Hau weg haben, ist derzeit die ddrecue-Sicherung auf die beiden Platten nutzlos, sie hat denselben Inhalt wie die beiden RAID-Platten.

Wenn Du also keine anderen Platten mehr zur Verfügung hast, mach Dir ein Win7 System auf eine der dieser beiden Platten. Damit kann man dann etwas bequemer arbeiten, die Linux-Auszüge zeigen nicht alle Details.
Dazu klemm die SSD und die beiden RAID-Platten vom Strom, damit da nicht versehentlich draufgeschrieben wird. Installiere unter BIOS-Einstellung RAID, damit die notwendigen Treiber gleich drauf sind und installiere danach das Intel RST Zeug.

Ich will jetzt nicht nach den Spezifikationen Deines Bords schauen, wieviele SATA-Ports sind da drauf, nur die 6 vom Intel Controller, oder hat das noch zusätzliche andere Controller?
 
Hab mich entschlossen das Daten-Backup beizubehalten und hab mein System platt gemacht, also auf das SSD komplett ein neues Windows drauf - das heisst wir brauchen keine Rücksicht mehr auf Systemintegrität (zusammenspiel Win/Raid, Plattenreihenfolge, etc) zu legen, sondern "nur" das Raid wieder lesbar machen.

Kurzum: Win7 ist installiert (vorher ne Kopie auch von dieser Platte gemacht) - next steps?

PS: Es ist neben dem Intel FakeRaid auch noch ein JMicron SATA Controller drauf - daran hängt die SSD
 
OK, dann spulen wir das ganze Proramm mal schnell unter Win ab:

Installiere Dir CrystalDiskInfo und lade Dir den Hex-Editor HxD von hier in der englischen Version runter und installiere ihn. Damit nicht herumexperimentieren, damit die Defaulteinstellungen erhalten bleiben:

HxD Aufruf unter User mit Administratorrechten (oder per Rechtsklick mit ausführen als...)
========= Überprüfen der Anzeigeeinstellungen, bei Bedarf richtigstellen
- Menü: Extras/Options.../View
Bytes per row: 16
Byte Group size: 1
Charset: ANSI
Offset-base: hexadecimal
- HxD beenden

========= später ab hier auch mit der zweiten Platte wiederholen

Jetzt hängst Du die Platte mit der Seriennummer ...761 an den freien zweiten Anschluss des jMicron

selektiere die ...761 und dann im Menü
Copy/Copy Options Häkchen bei IDENTIFY_DEVICE und SMART_READ_DATA machen,
dann Strg+C (Übertragen in Zwischenablage)
in eine Textdatei einfügen, die Du "CDI761.txt" benennst

Sieh in der Datenträgerverwaltung, als welcher Datenträger die Memberplatte angezeigt wird. (Wenn Win eine der Platten initialisieren will, ABLEHNEN!)

Im HxD ist die physical hard disk x Nummer um 1 höher als in der Datenträgerverwaltung angezeigt,

HxD Aufruf unter User mit Administratorrechten (oder per rechtklick - Ausführen als ...)

- Menü: Extras/open disk/physical disk/hard disk x (Häkchen bei "open as readonly" NICHT entfernen)

========= Sichern MBR/Sektor 0
- Menü: Edit/select block/start-offset: 0 , length: 200 , hex, OK
- Strg+C (überträgt den markierten Inhalt in die Zwischenablage)
- Menü: File/New (es erscheint in der Anzeige ein zweiter Reiter "untitled1")
- Strg+V (überträgt den Inhalt aus der Zwischenablage) im popup "file size change": OK
- Menü: File/Save as... einen Ordner auswählen und als Dateinamen "Sector0.761.bin" /speichern
- Menü: File/Close

========= extrahieren Sektor 0-7
- Menü: Edit/select block/start-offset: 0 , length: 1000, hex, OK
- Menü: Edit/copy as.../ editor view (überträgt den markierten Inhalt in die Zwischenablage)
- Menü: File/New (es erscheint in der Anzeige ein zweiter Reiter "untitled2")
- in das kleine punktierte Rechteck rechts unter ... 0E 0F klicken
- Strg+V (überträgt den Inhalt aus der Zwischenablage) im popup "file size change": OK
- den Cursor an der Endposition belassen, nicht in der Anzeige herumklicken!

========= extrahieren maxLBA-4 (RAID-Metadaten)
- auf Reiter "hard disk x" klicken
- in der Menüzeile rechts auf den Button ">|" anklicken, danach auf "<" drei Mal klicken (Positionierung auf letzten Sektor und dann drei Sektoren nach vorne)
- Menü: Edit/select block/(den eingetragenen Start-Offset belassen) length: 800, hex, OK
- Menü: Edit/copy as.../ editor view (überträgt den markierten Inhalt in die Zwischenablage)
- Reiter "untitled2" anklicken
- Strg+V (überträgt den Inhalt aus der Zwischenablage) im popup "file size change": OK
- Menü: File/Save as... einen Ordner auswählen und als Dateinamen "HxD761.txt" /speichern
- HxD beenden

Das gleiche machst Du dann nochmals statt mit der Seriennummer ...761 auch noch mit der anderen mit Seriennummer ...757
Alle Files gezippt in den Anhang stellen,

danach installier die Intel-RAID-Treiber (falls noch nicht passiert)
 
Alles klar und erledigt. Ergebnisse unten.

Ich habe allerdings die Platten nicht an dern JMicron gehängt, laut Manual ist der 2. Anschluss ein eSATA und ist dafür gedachte mit dem primären Anschluss ein RAID zu machen. Also habe ich die Settings des ISM im BIOS auf IDE (statt RAID) gestellt und die Platten nacheinander angeschlossen. Das hat auch (scheinbar) funktioniert.
Nachdem ich das Handbuch rausgekramt hatte, ist mir auch aufgefallen, dass es einen 3. RAID-Controller gibt, der mit "EZ-RAID" beschrieben ist. Lesen im Handbuch hat ergeben, dass auch dieser Controller nicht ideal ist, da er primär für Backup-Funktionen verwendet wird. Muss mir das mal genauer reinziehen, hab das noch nicht durchdrungen wie das funzt.

Wenn ich dadurch (Platte am alten Controller, aber BIOS auf "IDE" statt "RAID") etwas falsch gemacht habe, habe ich ja immernoch die Kopie auf den beiden 1TB-Platten, die ich mit DD zurückspielen kann.

Nur folgendes. Mir fällt gerade auf, dass jetzt in der Datenträgerverwaltung die #761 als "Fehlerfrei, primäre Partition (F:)" zu sehen ist. ich habe mir verkniffen mit dem Explorer drauf zu schaun weil ich ja weiss es kann gar nicht funktionieren.

Die 6 Dateien habe ich gezippt angehängt.

Die RAID Treiber sollten inszwischen installiert sein, da ich W7 bereits im RAID-Mode installiert habe.
 

Anhänge

  • Celestine.zip
    24,5 KB · Aufrufe: 304
So gehts natürlich auch - bei einem zweitem SATA-Controller geht es einfacher, wenn man im BIOS nichts umstellen muss.

Ein Zugriff auf F: kann nur einen Fehlermeldung produzieren, weil in der Einzelkonfiguration der Memberplatten dabei kein gültiges Filsesystem erkannt werden kann (deswegen steht auch nicht NTFS dabei :) ) und die Anzeige in der Datenträgerverwaltung zeigt die Partitionierung des Arrays, weil der MBR des Arrays auf der ersten Memberplatte liegt.

Wie Du siehst, hat die Platte ...757 10 Sektoren ausgelagert,
die andere ...761 hat einen UDMA check eingetragen
Wann das passiert ist, kann nicht gesagt werden, und ob das zum Zerfall geführt hat, auch nicht.

Die Partition Table im MBR des Members 1 (...761) zeigt einen ungewöhnlichen Aufbau, da normalerweise unter Win die Partitions aufsteigend sortiert defíniert werden...

Die Member 2 HDD (...757) sieht vorne nach einer NTFS-Metadatei aus (was bei höherer Stripesize als 32K zu erwarten sein kann) und hinten sieht sie sehr geschreddert aus, wo eigentlich die RAID-Metadaten stehen sollten. Sowas ist mir schon mal untergekommen, wo irgendein Utility (Encryption oder so) hinter das Ende des Arrays schreiben konnte, weil die Intel-Treiber da irgendeinen Fehler haben(oder das von denen selbst stammt)

Also hänge die Platten wieder in der richtigen Reihenfolge an den RAID-Controller, stell den wieder auf RAID.
Nach dem POST gehe mit entsprechender Tastenkombination in den Intel RAID-Boot-ROM und mach ein "Reset to non-RAID disks"
Dann definiere den RAID0 neu; Überprüfe die Reihenfolge der Memberplatten, gleiche Stripesize, gleicher Arrayname wie vorher angezeigt wurde.

Nach dem Boot von der SSD mach einen Screenshot der Datenträgerverwaltung
(Platten initialisieren ablehnen)

Dann ist nur noch ein wenig HxD nötig, um das Zeug wieder betriebsbereit zu kriegen..
 
Der Zerfall kam durch das besagte Intel-Utility das den Meta-Record killt. Erst nachdem das passiert ist hab ich in irgendwelchen Foren hinweise gefunden dass das ein "Standardverhalten" ist, da beim IMS ein "fehlendes Feature" besteht und der SMART nicht ausgelesen werden kann. Anyway.

Was die PartitionTable betrifft, kann das wohl so sein, da ich auf dem Raid einiges an Partitionen herumgeschoben und verändert habe - laaaange bevor es Probleme gab.

Kurzum: Alles angeschlossen, Raid im BIOS wieder neu initialisiert, wird beim POST auch als "grün" anzegeigt. Im BIOS noch die Bootreihenfolge geändert damit er net vom RAID booten will.

Soweit alles paletti. Datenträgerverwaltung wollte korrekterweise initialisieren, was ich abgelehnt habe. Screenshot anbei.

celestine-screen1-jpg.213140
 

Anhänge

  • Celestine-screen1.jpg
    Celestine-screen1.jpg
    89,3 KB · Aufrufe: 952
Fein, dann öffne mal im HxD physical herd disk 1,
poste mir, was rechts als höchste Sektoradresse in der Menüzeile steht,
und sieh mal nach ob folgendes zutrifft:

- Sektor 0 wird komplett leer sein (00 00 00 ...)

- am Beginn von Sektor 1 steht
0000000200 33 C0 8E D0 BC 00 7C 8E C0 8E D8 BE 00 7C BF 00 3ÀŽÐ¼.|ŽÀŽØ¾.|¿.
0000000210 06 B9 00 02 FC F3 A4 50 68 1C 06 CB FB B9 04 00 .¹..üó¤Ph..Ëû¹..

- am Beginn von Sektor 256 steht
0000020000 00 A9 01 A9 02 A9 03 A9 04 A9 05 A9 06 A9 07 A9 .©.©.©.©.©.©.©.©
0000020010 08 A9 09 A9 0A A9 0B A9 0C A9 0D A9 0E A9 0F A9 .©.©.©.©.©.©.©.©
oder ist hier auch alles 00 ?
 
Alles so wie du es beschreibst.
Sektor 256 ist ".©.©.©.©.©.©.©.©"
Höchster Sektor ist 976783360
 
HxD Aufruf unter User mit Administratorrechten (oder per Rechtsklick mit ausführen als...)
- Menü: Extras/open disk/physical disk/hard disk 1 (Häkchen bei "open as readonly" diesmal schon entfernen)

========= restore Sektor 0 auf Array
- Menü: Open /recent files ... / Sector0.761.bin auswählen und öffnen
- Strg+A (markiert alles)
- Strg+C (Stellt es in die Zwischenablage)
- Menü: File/Close (hard disk 1 wird wieder angezeigt)
- Menü: Edit/select block/start-offset: 0 , length: 200, hex, OK
- Strg+V (überträgt den Inhalt aus der Zwischenablage) wenn popup "file size change" kommt: ABBRECHEN - Änderungen nicht speichern
- Menü: File/Save (schreibt den Inhalt zurück)
- Menü: File/Close
- HxD beenden

Danach ein Neustart (Boot wieder von der SSD) dann solltest Du alle 3 Partitionen am Array wieder sehen, und dann darf ein chkdsk auf diese drei ohne Parameter auch keine Fehler ergeben.
Dann ist der RAID0 wieder fit.

Welches Intel-Utility (Post#10) hast Du da verwendet?
 
Zuletzt bearbeitet:
B I N G O !!!!!​

Ja saugut! - unterm strich haben wir den Superblock gesichert, das RAID neu initiiert und dann den Superblock auf die zweite Platte draufgeschrieben. Korrekt?

I hob meine Daten widda! Jomei, wi geil issn des.
Lieber Gott, ich verspreche regelmässige Backups zu machen.


Ich habe nachgeschaut. Das Tool ist nicht von Intel, sondern von Samsung, es heisst ESTOOL.
http://www.samsung.com/global/business/hdd/support/downloads/support_in_es.html


PS: hast du'n paypal?
 
Nein - gesichert haben wit den MBR des Arrays, der beim auflösen/wiederanlegen gelöscht wird, und nachher wieder draufgemacht. Beim Neuanlegen macht der hinten seine Superblocks auf beide Platten selber drauf. Das Kopieren dieser von 1 auf 2 hätte keinen Sinn, weil da drinnensteht, dass Member2 fehlt, und damit kennt er sich weiterhin nicht aus...
 
Alles klar, verstanden. Supi.

Lach. jetzt jann ich ja Daten sichern bis zum Umfallen - mit 2x 1TB Platten.... ;)

PS: Paypal?? oder: wie kann ich dir ein Danke durch einen "Energieausgleich" zukommen lassen?
 
Zurück
Oben