[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mdadm-crash



Hallo Peter,

Am Freitag, den 09.01.2009, 17:29 +0100 schrieb Peter Funk: 
> Hallo Thomas,
> 
> Thomas Halinka schrieb am Freitag, den 09.01.2009 um 15:05:
> ...
> > cat /proc/mdstat 
> > Personalities : [raid0] [raid1] 
> > md2 : active raid1 sda3[0] sdb3[2](F)
> >       717880512 blocks [2/1] [U_]
> 
> Hier ist /dev/sdb3 als Faulty markiert!  Das RAID1 /dev/md2 
> läuft zu diesem Zeitpunkt degraded mit Datenaustausch nur noch
> mit /dev/sda3.  Wenn das schon länger so war, enthält /dev/sdb3
> veraltete Daten.

alt, aber immerhin Daten. 

> 
> ...
> > Nun muss ich allerdings md2 irgendwie rebuilden, da dies mein PV ist und
> > die Nutzdaten enthält.
> > 
> > Allerdings sieht das nun so aus:
> ...
> > # mdadm --examine /dev/md2
> > mdadm: No md superblock detected on /dev/md2.
> > 
> > # mdadm --examine /dev/sdb3
> > /dev/sdb3:
> >           Magic : a92b4efc
> >         Version : 00.90.00
> >            UUID : 15698e4f:71833ea5:bcbdcba1:ff32d880
> >   Creation Time : Thu Sep  4 01:21:24 2008
> >      Raid Level : raid1
> >     Device Size : 717880512 (684.62 GiB 735.11 GB)
> >      Array Size : 717880512 (684.62 GiB 735.11 GB)
> >    Raid Devices : 2
> >   Total Devices : 2
> > Preferred Minor : 2
> > 
> >     Update Time : Fri Jan  9 13:00:43 2009
> >           State : clean
> >  Active Devices : 1
> > Working Devices : 2
> >  Failed Devices : 1
> >   Spare Devices : 1
> >        Checksum : aa6678fc - correct
> >          Events : 0.11972996
> > 
> > 
> >       Number   Major   Minor   RaidDevice State
> > this     2       8       19        2      spare   /dev/sdb3
> > 
> >    0     0       8        3        0      active sync   /dev/sda3
> >    1     1       0        0        1      faulty removed
> >    2     2       8       19        2      spare   /dev/sdb3
> > 
> > 
> > mdadm ist wohl der Meinung sdb3 sei eine Spare?!
> 
> Das war der letzte Zustand, weil das ist immer der Ausgangszustand
> einer RAID1-Partition nach dem mdadm --add und vor dem Ende des Rebuild.

aha, Danke für diese Info.

> 
> > Wie komm ich denn nun an mein md2? Komm ich noch an die Daten?
> 
> Bei einem RAID1 kann man auch direkt auf die Daten zugreifen, in
> dem man statt /dev/md2 in diesem Fall direkt auf /dev/sdb3 
> zugreift. 

jaja, nur findet pvscan nüschd auf sdb3. Das md2 war ein PV für LVM.

> Ansonsten kennt mdadm einige spezielle Optionen
> mit denen man den MD-Superblock gezielt dazu "überreden" kann,
> dass die Partition "active sync" werden soll.  mdadm Assemble
> mit --force könnte funktionieren.

# mdadm --assemble --scan
mdadm: No suitable drives found for /dev/md2

Mit --force trau ich mich nicht und hilft doch auch nicht wirklich an
dieser Stelle? force hilft doch nur mdadm über kleine Macken
hinwegzusehen?

> > Was kann man hier noch tun? Alte Platte wäre noch greifbar - scheint
> > aber nicht wirklich in Takt zu sein - Lese/Schreib/IO-Fehler.
> 
> Möglicherweise kann man da mit ddrescue noch was holen.  Ich würde
> erstmal probeweise /dev/sdb3 read only direkt mounten und schauen,
> wie veraltet die Daten darauf sind.

Kann ich irgendwie pvscan "überreden" sdb3 zu nutzen?

# pvscan 
  No matching physical volumes found

Reicht es hierfür md2 durch sdb3 zu tauschen in einer dieser Files?

grep -r md2 /etc/lvm/
/etc/lvm/backup/data: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00070.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00067.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00059.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00058.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00071.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00069.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00064.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00062.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00066.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00063.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00068.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00061.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00065.vg: device = "/dev/md2" # Hint only
/etc/lvm/archive/data_00060.vg: device = "/dev/md2" # Hint only


Wenn ja welche müsste ich denn editieren? :)

> 
> Mit freundlichen Grüßen,
> Peter Funk

Vielen Dank,

Thomas


Reply to: