私は manjaro を実行しており、mdadm を使用して追加の RAID 0 を設定し、ext4 としてフォーマットしました。使用を開始したところ、すべて正常に動作しました。しかし、再起動後、アレイが消えてしまいました。自動的に再構成されなかっただけだと思っていましたが、完全に消えてしまったようです。
sudo mdadm --assemble --force /dev/md0 /dev/nvme0 /dev/nvme1 /dev/nvme2
mdadm: cannot open device /dev/nvme0: Invalid argument
mdadm: /dev/nvme0 has no superblock - assembly aborted
cat /proc/mdstat
cat: /proc/mdstat: No such file or directory
cat /etc/mdstat/mdstat.conf
cat: /etc/mdstat/mdstat.conf: No such file or directory
sudo mdadm --assemble --scan --force
mdadm: No arrays found in config file or automatically
sudo mdadm --assemble --force /dev/md0 /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1
mdadm: Cannot assemble mbr metadata on /dev/nvme0n1
mdadm: /dev/nvme0n1 has no superblock - assembly aborted
つまり、その配列の構成も消えてしまったようですね?そしてスーパーブロックはどうなっているのでしょうか? 今のところは、再起動中にドライブがランダムに故障しなかったと仮定しましょう。ただし、それは不可能ではありません。もちろん、そのアレイには重要なデータは保存していませんが、どこで問題が発生したのかを理解する必要があります。もちろん、アレイを回復できれば素晴らしいことですし、セットアップに費やす時間を数時間節約できます。
追加情報
mdadm: Cannot assemble mbr metadata on /dev/nvme0n1"
ただし、私の記憶では、ディスクは GPT を使用しているはずです。GPT を使用するために設定する必要があるパラメータはありますか?
その後、フォーマットせずに配列を再作成すると、配列上のすべてのデータへのアクセスが復元されることが分かりました。
sudo mdadm --create --verbose --level=0 --metadata=1.2 --raid-devices=3 /dev/md/hpa /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1
しかし、再起動するたびに再び消えてしまい、再作成する必要があります。
sudo mdadm --detail --scan
ARRAY /dev/md/hpa metadata=1.2 name=Mnemosyne:hpa UUID=02f959b6:f432e82a:108e8b0d:8df6f2bf
cat /proc/mdstat
Personalities : [raid0]
md127 : active raid0 nvme2n1[2] nvme1n1[1] nvme0n1[0]
1464763392 blocks super 1.2 512k chunks
unused devices: <none>
この問題を分析するために他に何を試みることができますか?
答え1
基本的に、私にとってうまくいった解決策は、nvme ドライブを単一の fd00 Linux RAID パーティションでフォーマットし、それを RAID に使用することでした。
gdisk /dev/nvme[0-2]n1
コマンド n を押し、16 進コードのパーティション タイプを要求されるまで Enter キーを押します。fd00 と入力し、Enter キーを押します。コマンド w を押して確定します。これをすべてのドライブに対して繰り返し、前と同じようにアレイの作成に進みますが、今回はブロック デバイスの代わりに作成したパーティションを使用します。例:
mdadm --create --verbose --level=0 --metadata=1.2 --raid-devices=3 /dev/md/hpa /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1