パーティション分割スキームとしてGPTを使用しています。パーティションのUUIDを確認します。
# ls -l /dev/disk/by-partuuid/
total 0
lrwxrwxrwx 1 root root 10 Oct 18 22:39 0793009a-d460-4f3d-83f6-8103f8ba24e2 -> ../../sdb3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 13f83c47-ad62-4932-8d52-e93626166e7f -> ../../sdc3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 1b247b1f-0b7b-419e-bc3b-0f90cbadb87c -> ../../sdc2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 224d5933-7a23-4833-b785-79a67c9b9306 -> ../../sda1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 2ff625b2-b96b-4ce5-b752-57cdf7092258 -> ../../sda3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 449956f9-7289-49ed-9a37-ed6be9264d1c -> ../../sdb1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a2a95e45-7e4c-4b20-a2bd-66d96e737590 -> ../../sdb2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a8c07f74-9d6d-4f45-9453-dd2e6998f100 -> ../../sda2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 c2c9e94c-9c73-4d6e-a4ec-2229f56152e8 -> ../../sdc1
そして、そのUUIDを使用して/dev/sdc2
を追加します。
# mdadm /dev/md0 --add /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c
mdadm: added /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c
しかし、RAIDアレイの詳細を見ると、UUIDではなく/dev/sdc2
が報告されています。
# mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Oct 18 21:52:43 2012
Raid Level : raid1
Array Size : 1048564 (1024.16 MiB 1073.73 MB)
Used Dev Size : 1048564 (1024.16 MiB 1073.73 MB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Oct 19 15:57:19 2012
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : cow:0 (local to Host cow)
UUID : 9e691db1:f8fcc7d8:f56d9c11:1c202693
Events : 47
Number Major Minor RaidDevice State
2 8 34 0 active sync /dev/sdc2
1 8 18 1 active sync /dev/sdb2
mdraidを使用すると、ディスクをアレイに追加する方法に関係なく、マシン内でディスクを自由に移動できます。ディスクに保存されているRAIDメタデータ(スーパーブロック)によってディスクを追跡します。
これは、mdadmがアレイの組み立て時にディスクを検出できることを前提としています。デフォルト(/etc/mdadm/mdadm.conf
)は通常DEVICE partitions
は、RAIDスーパーブロックをチェックする(すべてのディスク上の)すべてのパーティションを調べることを意味します。配列名またはUUIDの一致を確認します(その構成ファイルで何を行うかによって異なります)。両方が--detail
出力。
例:
DEVICE partitions
:
ARRAY /dev/md0 metadata=1.2 UUID=9e691db1:f8fcc7d8:f56d9c11:1c202693
組み立てるように言われたら/dev/md0
、mdadmはシステム上のすべてのパーティションをスキャンし、UUID 9e691db1:f8fcc7d8:f56d9c11:1c202693の1.2スーパーブロックを探します。それぞれからデバイス番号などを読み取り、その情報を使用して配列を組み立てます。
すべてのパーティションのスキャンに負荷がかかる場合にのみ、DEVICE
行を変更します。たとえば、ネットワーク上に何百もの場合があります。次に、必要に応じて関連デバイスをそこにリストできます(UUIDによって正常に機能するはずです)。