[Sysadmins] Восстановить mdadm raid5 после двойного сбоя

Maxim Tyurin mrkooll на bungarus.info
Сб Июл 4 15:00:38 MSD 2009


Hi!

Случилась неприятность с raid.
Был raid5 из четырех дисков
sdb, sdc, sdd, sde

Сначала был сбой на диске sdc
не успел я его переподключить в рейд - вылетает второй диск sdd.

После этого рейд замирает и комп я выключаю (этот рейд не системный)

Загружаюсь с rescue cd и пытаюсь восстановить рейд на последних трех
работающих дисках. Не восстанавливается

mdadm --assemble --force /dev/md0 --force /dev/sdb /dev/sde /dev/sdd
mdadm: /dev/md0 assembled from 2 drives and 1 spare - not enough to
start the array.

mdadm считает что sdd - hot spare 

cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : inactive sdb[0](S) sdd[4](S) sde[3](S)
     1465159488 blocks

unused devices: <none>


cat /sys/block/md0/md/array_state 
inactive

Найденный в Инете совет 
не помогает (да и не работает)
echo "clean" > /sys/block/md0/md/array_state
echo: write error: invalid argument


В суперблоке sdd и записано что он spare.

Два диска видно что активные
mdadm -E /dev/sdb
/dev/sdb:
         Magic : a92b4efc
       Version : 0.90.00
          UUID : cbdfd4d7:eb433e2c:94d4591b:cb0c55f0
 Creation Time : Wed Apr 16 19:31:35 2008
    Raid Level : raid5
 Used Dev Size : 488386496 (465.76 GiB 500.11 GB)
    Array Size : 1465159488 (1397.29 GiB 1500.32 GB)
  Raid Devices : 4
 Total Devices : 2
Preferred Minor : 0

   Update Time : Fri Jul  3 19:13:58 2009
         State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 2
 Spare Devices : 0
      Checksum : 6fa95d6e - correct
        Events : 552701

        Layout : left-symmetric
    Chunk Size : 64K

     Number   Major   Minor   RaidDevice State
this     0       8       16        0      active sync   /dev/sdb

  0     0       8       16        0      active sync   /dev/sdb
  1     1       0        0        1      faulty removed
  2     2       0        0        2      faulty removed
  3     3       8       64        3      active sync   /dev/sde

mdadm -E /dev/sde
/dev/sde:
         Magic : a92b4efc
       Version : 0.90.00
          UUID : cbdfd4d7:eb433e2c:94d4591b:cb0c55f0
 Creation Time : Wed Apr 16 19:31:35 2008
    Raid Level : raid5
 Used Dev Size : 488386496 (465.76 GiB 500.11 GB)
    Array Size : 1465159488 (1397.29 GiB 1500.32 GB)
  Raid Devices : 4
 Total Devices : 2
Preferred Minor : 0

   Update Time : Fri Jul  3 19:13:58 2009
         State : active
 Active Devices : 2
Working Devices : 2
 Failed Devices : 2
 Spare Devices : 0
      Checksum : 6fa95da3 - correct
        Events : 552701

        Layout : left-symmetric
    Chunk Size : 64K

     Number   Major   Minor   RaidDevice State
this     3       8       64        3      active sync   /dev/sde

  0     0       8       16        0      active sync   /dev/sdb
  1     1       0        0        1      faulty removed
  2     2       0        0        2      faulty removed
  3     3       8       64        3      active sync   /dev/sde

А вот sdd записан как hot spare
mdadm -E /dev/sdd
/dev/sdd:
         Magic : a92b4efc
       Version : 0.90.00
          UUID : cbdfd4d7:eb433e2c:94d4591b:cb0c55f0
 Creation Time : Wed Apr 16 19:31:35 2008
    Raid Level : raid5
 Used Dev Size : 488386496 (465.76 GiB 500.11 GB)
    Array Size : 1465159488 (1397.29 GiB 1500.32 GB)
  Raid Devices : 4
 Total Devices : 3
Preferred Minor : 0

   Update Time : Fri Jul  3 16:04:38 2009
         State : clean
Internal Bitmap : present
 Active Devices : 2
Working Devices : 3
 Failed Devices : 2
 Spare Devices : 1
      Checksum : 6fb1a16e - correct
        Events : 552700

        Layout : left-symmetric
    Chunk Size : 64K

     Number   Major   Minor   RaidDevice State
this     4       8       48        4      spare   /dev/sdd

  0     0       8       16        0      active sync   /dev/sdb
  1     1       0        0        1      faulty removed
  2     2       0        0        2      faulty removed
  3     3       8       64        3      active sync   /dev/sde
  4     4       8       48        4      spare   /dev/sdd


Все три диска полностью рабочие. Читаются без ошибок.


Можно лит такой массив восстановить? И переубедить mdadm в том что sdd
не spare, а active?
-- 

With Best Regards, Maxim Tyurin
JID:	MrKooll на jabber.pibhe.com
   ___                                 
  / _ )__ _____  ___ ____ _______ _____
 / _  / // / _ \/ _ `/ _ `/ __/ // (_-<
/____/\_,_/_//_/\_, /\_,_/_/  \_,_/___/
               /___/  


Подробная информация о списке рассылки Sysadmins