web-dev-qa-db-ja.com

RAID5が劣化し、残りのドライブの1つにmdスーパーブロックがない

これは実際にはQNAPTS-509NASにあります。 RAIDは基本的にLinuxRAIDです。

NASは5台のドライブを備えたRAID5で構成されました(/ md0と/ dev/sd [abcde] 3)。ある時点で/ dev/sdeに障害が発生し、ドライブが交換されました。再構築中(完了していません)、NASが再起動し、/ dev/sdcがアレイからドロップアウトしました。基本的に2つのドライブがドロップアウトしたため、アレイを起動できません。/dev/sdeを切断しました。/md0が劣化モードで再開できることを期待しましたが、運がありませんでした。さらに調査すると、/ dev/sdc3にはmdスーパーブロックがないことがわかりました。/dev/sdcがドロップオフした後、アレイがアセンブルできなかったため、データは良好なはずです。

私が行ったすべての検索は、1つの不良ドライブを想定してアレイを再構築する方法を示しました。しかし、/ dev/sdc3でスーパーブロックを復元する必要があると思います。これにより、アレイが劣化モードになり、データをバックアップしてから、/ dev/sdeを追加して再構築を続行できます。

どんな助けでも大歓迎です。

mdstatは/ dev/md0を表示しません

# cat /proc/mdstat 
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] 
md5 : active raid1 sdd2[2](S) sdc2[3](S) sdb2[1] sda2[0]
      530048 blocks [2/2] [UU]

md13 : active raid1 sdd4[3] sdc4[2] sdb4[1] sda4[0]
      458880 blocks [5/4] [UUUU_]
      bitmap: 40/57 pages [160KB], 4KB chunk

md9 : active raid1 sdd1[3] sdc1[2] sdb1[1] sda1[0]
      530048 blocks [5/4] [UUUU_]
      bitmap: 33/65 pages [132KB], 4KB chunk

mdadm show/dev/md0はまだあります

# mdadm --examine --scan
ARRAY /dev/md9 level=raid1 num-devices=5 UUID=271bf0f7:faf1f2c2:967631a4:3c0fa888
ARRAY /dev/md5 level=raid1 num-devices=2 UUID=0d75de26:0759d153:5524b8ea:86a3ee0d
   spares=2
ARRAY /dev/md0 level=raid5 num-devices=5 UUID=ce3e369b:4ff9ddd2:3639798a:e3889841
ARRAY /dev/md13 level=raid1 num-devices=5 UUID=7384c159:ea48a152:a1cdc8f2:c8d79a9c

/ dev/sdeを削除した状態で、sdc3にmdスーパーブロックがないことを示すmdadm検査出力を次に示します。

# mdadm --examine /dev/sda3
/dev/sda3:
          Magic : a92b4efc
        Version : 00.90.00
           UUID : ce3e369b:4ff9ddd2:3639798a:e3889841
  Creation Time : Sat Dec  8 15:01:19 2012
     Raid Level : raid5
  Used Dev Size : 1463569600 (1395.77 GiB 1498.70 GB)
     Array Size : 5854278400 (5583.08 GiB 5994.78 GB)
   Raid Devices : 5
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Dec  8 15:06:17 2012
          State : active
 Active Devices : 4
Working Devices : 4
 Failed Devices : 1
  Spare Devices : 0
       Checksum : d9e9ff0e - correct
         Events : 0.394

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     0       8        3        0      active sync   /dev/sda3

   0     0       8        3        0      active sync   /dev/sda3
   1     1       8       19        1      active sync   /dev/sdb3
   2     2       8       35        2      active sync   /dev/sdc3
   3     3       8       51        3      active sync   /dev/sdd3
   4     4       0        0        4      faulty removed
[~] # mdadm --examine /dev/sdb3
/dev/sdb3:
          Magic : a92b4efc
        Version : 00.90.00
           UUID : ce3e369b:4ff9ddd2:3639798a:e3889841
  Creation Time : Sat Dec  8 15:01:19 2012
     Raid Level : raid5
  Used Dev Size : 1463569600 (1395.77 GiB 1498.70 GB)
     Array Size : 5854278400 (5583.08 GiB 5994.78 GB)
   Raid Devices : 5
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Dec  8 15:06:17 2012
          State : active
 Active Devices : 4
Working Devices : 4
 Failed Devices : 1
  Spare Devices : 0
       Checksum : d9e9ff20 - correct
         Events : 0.394

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     1       8       19        1      active sync   /dev/sdb3

   0     0       8        3        0      active sync   /dev/sda3
   1     1       8       19        1      active sync   /dev/sdb3
   2     2       8       35        2      active sync   /dev/sdc3
   3     3       8       51        3      active sync   /dev/sdd3
   4     4       0        0        4      faulty removed
[~] # mdadm --examine /dev/sdc3
mdadm: No md superblock detected on /dev/sdc3.
[~] # mdadm --examine /dev/sdd3
/dev/sdd3:
          Magic : a92b4efc
        Version : 00.90.00
           UUID : ce3e369b:4ff9ddd2:3639798a:e3889841
  Creation Time : Sat Dec  8 15:01:19 2012
     Raid Level : raid5
  Used Dev Size : 1463569600 (1395.77 GiB 1498.70 GB)
     Array Size : 5854278400 (5583.08 GiB 5994.78 GB)
   Raid Devices : 5
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Dec  8 15:06:17 2012
          State : active
 Active Devices : 4
Working Devices : 4
 Failed Devices : 1
  Spare Devices : 0
       Checksum : d9e9ff44 - correct
         Events : 0.394

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     3       8       51        3      active sync   /dev/sdd3

   0     0       8        3        0      active sync   /dev/sda3
   1     1       8       19        1      active sync   /dev/sdb3
   2     2       8       35        2      active sync   /dev/sdc3
   3     3       8       51        3      active sync   /dev/sdd3
   4     4       0        0        4      faulty removed

fdiskの出力は、/ dev/sdc3パーティションがまだ存在していることを示しています。

[~] # fdisk -l

Disk /dev/sdx: 128 MB, 128057344 bytes
8 heads, 32 sectors/track, 977 cylinders
Units = cylinders of 256 * 512 = 131072 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdx1               1           8        1008   83  Linux
/dev/sdx2               9         440       55296   83  Linux
/dev/sdx3             441         872       55296   83  Linux
/dev/sdx4             873         977       13440    5  Extended
/dev/sdx5             873         913        5232   83  Linux
/dev/sdx6             914         977        8176   83  Linux

Disk /dev/sda: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          66      530113+  83  Linux
/dev/sda2              67         132      530145   82  Linux swap / Solaris
/dev/sda3             133      182338  1463569695   83  Linux
/dev/sda4          182339      182400      498015   83  Linux

Disk /dev/sda4: 469 MB, 469893120 bytes
2 heads, 4 sectors/track, 114720 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/sda4 doesn't contain a valid partition table

Disk /dev/sdb: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1          66      530113+  83  Linux
/dev/sdb2              67         132      530145   82  Linux swap / Solaris
/dev/sdb3             133      182338  1463569695   83  Linux
/dev/sdb4          182339      182400      498015   83  Linux

Disk /dev/sdc: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1          66      530125   83  Linux
/dev/sdc2              67         132      530142   83  Linux
/dev/sdc3             133      182338  1463569693   83  Linux
/dev/sdc4          182339      182400      498012   83  Linux

Disk /dev/sdd: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1          66      530125   83  Linux
/dev/sdd2              67         132      530142   83  Linux
/dev/sdd3             133      243138  1951945693   83  Linux
/dev/sdd4          243139      243200      498012   83  Linux

Disk /dev/md9: 542 MB, 542769152 bytes
2 heads, 4 sectors/track, 132512 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/md9 doesn't contain a valid partition table

Disk /dev/md5: 542 MB, 542769152 bytes
2 heads, 4 sectors/track, 132512 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/md5 doesn't contain a valid partition table
2
ark1214

痛い!

私が行ったすべての検索は、1つの不良ドライブを想定してアレイを再構築する方法を示しました。

これは、RAID5が複数の故障したドライブでは機能しないためです。 2つのドライブが欠落しているすべてのデータを回復することを保証することはできません。実際、両方のドライブに完全にアクセスできない場合、ドライブの回復は失敗します。単純なデータはもうありません。

2つのメモ:

  1. 私は完全に書き留めました。デッドディスクと同様に、ドライブがシステムから取り外されました。単一の不良セクタだけではありません。
  2. RAIDはバックアップではないという通常の怒り。 RAIDに障害が発生した場合は、システムを午後5時まで維持し、最後のバックアップ以降に変更されたファイルをバックアップし(増分バックアップを使用)、長時間の再構築を試みるか、RAIDを再構築してバックアップから復元できます。明らかに、ホームユーザーとしては少し異なることをしますが、RAID5の再構築を行ってUREを取得するときに同じ問題が解決しません。

この正規の投稿Serverfault および S.U。のこの投稿 および S.U。のこの投稿 も参照してください)

あなたの場合、私はこれらのオプションを見ます:

  1. ドライブを非常に高価なデータ復旧ラボに送ります。これらのものは本当に高価です。
  2. あきらめて、古いバックアップから復元します。
  3. 2つのドライブがない状態でRAIDアレイをマウントしてみてください。

オプション3を試す前に:ドライブのバックアップを作成してください。それらを別のシステムに配置し、ddまたはddrescueを使用してドライブをコピーします。それらの画像を保管してください。物事が失敗した場合は、これらから現在の状況に戻すことができます。 (読んでください:物事は悪化しません)。

その後、NASから、またはイメージを保存したシステムからの回復を試みることができます。それらの作業コピーを作成し、ループバックデバイスを使用します。十分なディスクスペースがある場合は、これが推奨される方法ですが、NAS全体の2倍の空きディスクスペースがある場所が必要になります。

次に、このかなり長いブログを読んでください http://blog.al4.co.nz/2011/03/recovering-a-raid5-mdadm-array-with-two-failed-デバイス/

その中の重要なステップは次のとおりです。
mdadm --create /dev/md1 --level=5 --raid-devices=5 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 missing

これにより、ドライブ5が欠落しているとマークされます。部分的に再構築した後の状態がわからないので、これを選択しました。

運が良ければ、劣化したアレイとしてマウントできるようになりました。すべてのデータをコピーしてから、アレイを削除して再構築します。データのコピー中にハングする場合があります。その場合は再起動し、いくつかのファイルをスキップして続行します。完璧にはほど遠いですが、リカバリに費用がかかり、バックアップがない場合は、これが唯一の方法である可能性があります。

4
Hennes