mdadm --create
を使用すべきではないと私に言い続けているこの男がいます RAIDアレイを回復することは、悪よりも悪いことですが、エラーです。何故ですか? RAIDを再び動作させる必要があるということですよね? --create
の場合、代わりに何を使用すればよいですか 間違いですか?
承認された回答:
--create
には何の問題もありません –自分が何をしているのかを知っている場合。
唯一の問題は、わからないです。
RAIDを作成する場合、コマンドは通常、次のような短いものです。
mdadm --create /dev/md42 --level=5 --raid-devices=3 /dev/sdx1 /dev/sdy1 /dev/sdz1
とてもシンプルですよね?
そうでないことを除いて、本当に。 RAIDにはもっと多くの変数があります。データオフセット、チャンクサイズ、メタデータバージョンがあり、ドライブ文字は時間の経過とともに変化する可能性があるため、再作成時に間違えやすいドライブ順序を忘れないでください。
適切な--create
は次のとおりです。 コマンドは代わりに次のようになります:
mdadm --create /dev/md42 --assume-clean
--level=5 --chunk=512K --metadata=1.2 --data-offset=2048s
--raid-devices=3 /dev/sdz1 missing /dev/sdy1
そして、それがあなたに与えるものは何でも、あなたはそれを読み取り専用でテストするべきです。そして、それがすべてではないかもしれません。 RAIDレイアウトもいくつかあることをご存知ですか? --create
は最後のストローであり、落とし穴は明らかではありません。理想的には、すべてのディスク、または少なくともメタデータ領域をバックアップするか、コピーオンライトオーバーレイを操作する必要があります。
提供しないものについては、mdadm
デフォルト設定を使用します。残念ながら、それらは固まっておらず、基本的にすべてが過去に変更されており、将来再び変更される可能性があります。
したがって、--create
を使用する場合 リカバリするには、RAIDを十分に理解する必要があり、古いRAIDがどのように見えるかを正確に知る必要があります。次に、--assume-clean
を追加する必要があります または、ディスクの1つをmissing
のままにします 、とにかく間違えた場合に備えて。また、間違った場所に書き込まれたメタデータから回復できるように、少なくともディスクの最初と最後にバックアップを作成する必要があります。
ほとんどの場合、他のオプションがあります。 --assemble --force
は1つですが、独自の落とし穴があります。 --examine
する必要があります まず、ドライブの1つが他のドライブよりも古い場合は、それをアセンブリに含めないでください。 --build
もあります dmsetup
も同様です メタデータを使用せず、データにアクセスできる可能性のあるRAIDの場合。それは安全という意味ではありませんが、書き込みを行うと、選択した設定が間違っているとデータが失われます。
一般に、データ回復は幅広い分野です。正しい行動方針を決定するには、経験が必要です。可能であれば問題を回避してください。そもそもRAIDが停止しないように、バックアップを作成し、セットアップを文書化し、ディスクを監視します。