Mdadmを使用してLinuxで動作させたいWindowsでセットアップされた3ディスクRAID5アレイがあります。以前にいくつかの基本的な偽物を作成しましたが、これはBIOSのIntel Matrix Storageユーティリティで設定されており、期待どおりに機能していません。
これが私のディスク設定です:
/dev/sda - 32GB SSD, Windows boot drive.
/dev/sda1 - Windows system partition
/dev/sda2 - Windows C:, 29GB
/dev/sdb }
/dev/sdc } the RAID5 array: 3x500GB; contains one partition, a 1TB NTFS filesystem
/dev/sdd }
/dev/sde - 128GB SSD, Linux's drive
/dev/sde1 - /boot
/dev/sde2 - LVM PV
/dev/dm0 - /
/dev/dm1 - /home
/dev/dm2 - <swap>
したがって、最初に行ったのはmdadm --assemble --scan
を実行することで、次のようになりました。
mdadm: /dev/sdd is identified as a member of /dev/md/imsm0, slot -1.
mdadm: /dev/sdc is identified as a member of /dev/md/imsm0, slot -1.
mdadm: /dev/sdb is identified as a member of /dev/md/imsm0, slot -1.
mdadm: added /dev/sdc to /dev/md/imsm0 as -1
mdadm: added /dev/sdb to /dev/md/imsm0 as -1
mdadm: added /dev/sdd to /dev/md/imsm0 as -1
mdadm: Container /dev/md/imsm0 has been assembled with 3 drives
そのため、ディスク上のIMSM情報は問題なく検出され、コンテナーが組み立てられました。
# mdadm --examine /dev/md/imsm0
/dev/md/imsm0:
Magic : Intel Raid ISM Cfg Sig.
Version : 1.2.02
Orig Family : ee19d190
Family : ee19d190
Generation : 0009ab28
UUID : ab31031b:2d9f8489:5d87a6c4:e87e3826
Checksum : f09a3edc correct
MPB Sectors : 2
Disks : 3
RAID Devices : 1
Disk00 Serial : 3PM1DZBD
State : active
Id : 00010000
Usable Size : 976768654 (465.76 GiB 500.11 GB)
[NMWVolume]:
UUID : c192a859:14874bab:06ca8af9:d3e8b52e
RAID Level : 5
Members : 3
This Slot : 0
Array Size : 1953536000 (931.52 GiB 1000.21 GB)
Per Dev Size : 976768264 (465.76 GiB 500.11 GB)
Sector Offset : 0
Num Stripes : 7631000
Chunk Size : 64 KiB
Reserved : 0
Migrate State : idle
Map State : normal
Dirty State : clean
Disk01 Serial : 3PM222TL
State : active
Id : 00020000
Usable Size : 976768654 (465.76 GiB 500.11 GB)
Disk02 Serial : 3PM22GFQ
State : active
Id : 00030000
Usable Size : 976768654 (465.76 GiB 500.11 GB)
そこにRaid5ボリューム「NMWVolume」が表示されていますが、どうすればアクセスできますか?そのコンテナデバイスは私には何もしません。何も読み取れません。つまり、fdisk /dev/md/imsm0
はUnable to read /dev/md/imsm0
を返すだけです。
mdadm --create --verbose --level=5 --raid-devices=3 --chunk=64 --auto=mdp /dev/md0 /dev/sd[bcd]
を実行しようとすると、次のエラーが発生します。
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: super1.x cannot open /dev/sdb: Device or resource busy
mdadm: not enough space after merge (0 < 0)
mdadm: device /dev/sdb not suitable for any style of array
/dev/sd[bcd]
を/dev/md/imsm0
に置き換えると、エラーmdadm: not enough devices with space to create array.
が発生します。
/dev/md/imsm0
アレイを停止し、sd [bcd]ドライブでmdadm --create
コマンドを再実行しようとすると、次のようになります。
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: /dev/sdb appears to be part of a raid array:
level=container devices=0 ctime=Wed Dec 31 18:00:00 1969
mdadm: partition table exists on /dev/sdb but will be lost or
meaningless after creating array
mdadm: layout defaults to left-symmetric
mdadm: /dev/sdc appears to be part of a raid array:
level=container devices=0 ctime=Wed Dec 31 18:00:00 1969
mdadm: layout defaults to left-symmetric
mdadm: /dev/sdd appears to be part of a raid array:
level=container devices=0 ctime=Wed Dec 31 18:00:00 1969
mdadm: partition table exists on /dev/sdd but will be lost or
meaningless after creating array
mdadm: size set to 488385408K
Continue creating array? ^C
だから私はそれをしていません...
私は考えが足りません。この配列を組み立てるにはどうすればよいですか?
わかりました、ばかげています。私はそれを考え出した。
コンテナを見つけてアセンブルするmdadm --assemble --scan
を実行した後、mdadm -I /dev/md/imsm0
を実行するとコンテナ内の配列がアセンブルされます。 D'oh!
# mdadm --assemble --scan
mdadm: Container /dev/md/imsm0 has been assembled with 3 drives
# mdadm -I /dev/md/imsm0
mdadm: Started /dev/md/NMWVolume with 3 devices
# ls -l /dev/md*
brw-rw---- 1 root disk 9, 126 Jan 24 02:22 /dev/md126
brw-rw---- 1 root disk 259, 0 Jan 24 02:22 /dev/md126p1
brw-rw---- 1 root disk 9, 127 Jan 24 02:22 /dev/md127
/dev/md:
total 0
lrwxrwxrwx 1 root root 8 Jan 24 02:22 imsm0 -> ../md127
lrwxrwxrwx 1 root root 8 Jan 24 02:22 NMWVolume -> ../md126
/dev/md126p1
にはRAID5の1TBNTFSボリュームがあります。