web-dev-qa-db-ja.com

Raid1で死んだHDを削除しますか?

私はdebian、raid1を使用していますが、ドライブの1つが停止しているようです。

root@rescue ~ # cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda2[0]
      486279424 blocks [2/1] [U_]

md0 : active raid1 sda1[0] sdb1[1]
      2104448 blocks [2/2] [UU]

unused devices: <none>
root@rescue ~ #

ヘルスハードドライブのみを使用することは可能ですか?レイドを削除する必要がありますか?もしそうなら、どのように?ありがとう!

3
MilMike

/ dev/sdbが完全に停止していないように見えますが、断続的な障害または不良ブロックが発生している可能性があります。おそらく失敗して、問題が発生した現在のディスクを使用してパーティションをミラーに追加し直すことができます。

方法は次のとおりです。

mdadm --remove /dev/md1 /dev/sdb2

(/ dev/sdb2が接続されていないと文句を言うかもしれません、それは問題ありません)

mdadm --add /dev/md1 /dev/sdb2

次に、次のことを行います。

cat/proc/mdstat

そして、それがかかる時間の見積もりを含めて、それが再構築されるのを見ることができます。

それが機能するかどうかを確認してください。そうでない場合(/ dev/sdb2が実際に破損している場合)、すべてのミラーでドライブに障害が発生し、sdbを削除し、同じサイズのドライブを追加し、新しいドライブをパーティション分割して、パーティションをミラーに戻す必要があります。どのドライブがsdbかわからない場合は、次のことを試してください。

dd if=/dev/sdb of=/dev/null count=40000 

サーバーの前面にディスクアクティビティを示すLEDがあるとすると、上記のディスクダンプ中に緑色のライトが点灯しているのがドライブsdbになります。 (または、このロジックを反転させて、sdaを緑色に点灯させ、ドライブが取り外されないことを示すこともできます)。どのディスクがどれであるかを把握した後は、いつでもddコマンドをControl-Cで安全に実行できます。 ddコマンドは、単にディスクからストリームを読み取り、それを無視するだけです。if=とof =が混同されない限り、そこには何も書き込まれません。

4
labradort

はい、正常なドライブのみを使用できます。それはすでに起こったことです。失敗したパーティションはsdb2だったと思いますか?それほど悪くないと思われる場合は、失敗したパーティション/ドライブに対してbadblockを実行することをお勧めします。

ブートローダーをどのように構成したかはわかりませんが、正しくセットアップされていれば、故障したドライブを引き出して交換できるはずです。

どのドライブがどれであるかが完全にわからない場合は、lshw -class diskのようなコマンドを使用すると、ドライブの論理名とシリアル番号の両方が表示されます。そうすれば、正しいドライブを引き出すことができます。

2
Zoredache