mdadm は起動時にレガシーアレイを構築します

mdadm は起動時にレガシーアレイを構築します

Windows ダイナミック ディスクを使用して構築された RAID0 があります。これはレガシー アレイであり、mdadm のビルドを使用して組み立てることができると読みました。次のコマンドを使用してアレイを構築し、マウントしました。

sudo mdadm --build /dev/md0 --chunk=64 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdb1
sudo mount -t ntfs-3g /dev/md0 /media/raid

これは素晴らしいですね!

現在、このアレイを起動時にマウントできるように取り組んでいます。次のエントリを fstab に追加しました。

 /dev/md0 /media/raid ntfs-3g defaults,locale=en_US.utf8 0 0

ここで問題が発生します。ただし、md0 をマウントする前に、アセンブルする必要があります。私が読んだものすべてでは、以下を実行するように書かれています。

sudo mdadm --detail --scan

そして、出力を mdadm.conf に入力します。ただし、出力は次のようになります。

ARRAY /dev/md0 metadata=

アレイはレガシーであるため、uuid やメタデータがなく、mdadm はそれをARRAY /dev/md0conf ファイルだけで構築することはできません。

起動時に RAID がレガシー モードで組み立てられるようにするには、mdadm.conf に何を入力すればよいですか?

答え1

アセンブリ用の配列を指定するとmdadm.conf、「通常の」配列にのみ使用でき、レガシー配列には使用できません。man ページには、レガシー配列 (ビルド モード) の場合について次のように記載されています。

この使用法は --create に似ています。違いは、スーパーブロックなしで配列を作成することです。これらの配列では、最初に配列を作成してからその後に配列を組み立てることに違いはありませんが、2 番目のケースではそこに有用なデータがあることを期待できます。

したがって、これらの配列は組み立てられません。これは、配列が正常に構築されたかどうかを確認する方法がないためだと思います。mdadmこの場合、元のデバイスにどのようなデータがあるかに関係なく、新しいデバイスのみが作成されます。

解決策としては、すべての fstab ファイルシステムがマウントされる前に呼び出される/etc/init.d(または)のスクリプトを使用して、起動時にアレイを構築することです。/etc/rc.local

でこの行を試すこともできますmdadm.confが、うまくいかないと思います:ARRAY /dev/md0 level=0 devices=/dev/sdc1,/dev/sdb1

関連情報