mdadm
で作成されたRAID5デバイスがあります。私はそれに取り組んでいて、簡単に言えば、mdadm --manage /dev/md127 -a /dev/sdd
と入力したかったのですが、誤ってmdadm --manage /dev/md127 -a /dev/md127 -a /dev/sdd
と入力したため、レイドがスペアドライブとして追加されました。
Number Major Minor RaidDevice State
4 8 32 0 active sync /dev/sdc
1 8 16 1 active sync /dev/sdb
- 0 0 2 removed
3 9 127 - spare /dev/md127
現在、レイドは正しく機能していません。私はそれを殺すことができないようです、そしてそれを解読する私の試みはちょうどコンピュータが^C
でぶら下がって何もしないで終わったところです。
だから私の質問はこれです:これを修正する方法はありますか?レイドを別のコンピューターに移動し、コンピューターを再起動して、mdadm --assemble /dev/md0 /dev/sd[b-c]
でレイドを構築してみました。これらはどちらも機能しませんでした。
さて、私はいくつかの黒い魔法のようなことをすることができました、そして私はmd127
ドライブが予備のデバイスでなくてもレイドを再組み立てすることができました。私がしたことはこれでした:
1)レイドの詳細を含むmdadm.confファイルを作成し、自動アセンブルされないように<ignore>
フラグを追加しました
1.5)レイドが組み立てられた場合、レイドを失敗したデバイスとしてmdadm --manage /dev/md127 --fail /dev/md127
でマークしてから、コンピューターを再起動してレイドを分解しました。この手順が必要かどうかはわかりませんが、とにかく実行しても問題はありませんでした
2)レイド内のすべてのドライブをmdadm --assemble /dev/md127 /dev/sdX /dev/sdY /dev/sdZ
で指定して、レイドを手動で再構築しました
3)これが二度と起こらないように、すべてのデータをレイドに接続されていない別のドライブに移動しました