web-dev-qa-db-ja.com

1つのディスクが欠落している3ドライブソフトウェアRAID5を組み立てます

2つのディスクだけで3ドライブソフトウェアRAID5を組み立てることは可能ですか?セットアップに1つの障害のあるディスクがあり、まったく読み取ることができませんでしたが、他の2つのディスクは問題ありません。だから私はddrescueで両方の素晴らしいデバイスのダンプを作成し、losetupでデバイスとして画像を使用しました。

これらの2つの左側のデバイスでRAIDを組み立てる方法は?

2
Maximilian Ruta

これを行う:

mdadm --assemble --run /dev/md0 LOOPDEVICE1 LOOPDEVICE2

--runフラグは、mdadmにすべてのデバイスなしでmdRAIDアレイをアセンブルさせるものです。

完全な例

RAID5に入れる3つのファイルを作成します。

deltik@workstation [/media/datadrive]# truncate -s 1G 1.img
deltik@workstation [/media/datadrive]# truncate -s 1G 2.img
deltik@workstation [/media/datadrive]# truncate -s 1G 3.img

losetupを使用してファイルをブロックデバイスにします(mdadmではブロックデバイスである必要があるため):

deltik@workstation [/media/datadrive]# Sudo losetup loop1 1.img 
deltik@workstation [/media/datadrive]# Sudo losetup loop2 2.img 
deltik@workstation [/media/datadrive]# Sudo losetup loop3 3.img

RAID5アレイを作成します。

deltik@workstation [/media/datadrive]# Sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/loop{1,2,3}
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 1047552K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

RAID5アレイを停止します。

deltik@workstation [/media/datadrive]# Sudo mdadm --stop /dev/md0
mdadm: stopped /dev/md0

デバイスの1つを取り外します。

deltik@workstation [/media/datadrive]# Sudo losetup -d /dev/loop3

RAID5で欠落している1つのデバイスからアレイをアセンブルします。mdadm--runフラグなしでそれを拒否することに注意してください。

deltik@workstation [/media/datadrive]# Sudo mdadm --assemble /dev/md0 /dev/loop1 /dev/loop2
mdadm: /dev/md0 assembled from 2 drives - need all 3 to start it (use --run to insist).
deltik@workstation [/media/datadrive]# Sudo mdadm --assemble --run /dev/md0 /dev/loop1 /dev/loop2
mdadm: /dev/md0 has been started with 2 drives (out of 3).

ここで、劣化したRAID5アレイを確認できます。

deltik@workstation [/media/datadrive]# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid5 loop1[0] loop2[1]
      2095104 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]

unused devices: <none>

deltik@workstation [/media/datadrive]# Sudo mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Tue Aug 25 04:41:27 2015
     Raid Level : raid5
     Array Size : 2095104 (2046.34 MiB 2145.39 MB)
  Used Dev Size : 1047552 (1023.17 MiB 1072.69 MB)
   Raid Devices : 3
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Tue Aug 25 04:41:44 2015
          State : clean, degraded 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : 0
           UUID : 89f52950:919bded3:5d6c5c25:714a7f15
         Events : 18

    Number   Major   Minor   RaidDevice State
       0       7        1        0      active sync   /dev/loop1
       1       7        2        1      active sync   /dev/loop2
       4       0        0        4      removed
4
Deltik