/proc/mdstat を理解する [U_] VS

/proc/mdstat を理解する [U_] VS

私のサーバーは raid1 でセットアップされています。数日前、sda が完全に落ちてしまい、データが破損しました。ドライブを交換し、パーティション テーブルをクローンし、それぞれのアレイを追加しました。sda3 (MD2) を追加している間、sdb に I/O エラーがあるため、再同期が失敗し続けました。sdb3 から保存できるすべてのファイルを sda3 にコピーし、raid を再構成し、sdb を新しいドライブに交換しました。現在、sdb パーティションをアレイに追加しています。私の懸念は次のとおりです。

cat /proc/mdstat 
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md3 : active raid1 sda4[0]
      1822442815 blocks super 1.2 [2/1] [U_]

md2 : active raid1 sda3[1]
      1073740664 blocks super 1.2 [2/1] [_U]

md1 : active raid1 sdb2[2] sda2[0]
      524276 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[2] sda1[3]
      33553336 blocks super 1.2 [2/2] [UU]

同期前は md0 と md1 の両方が [U_] として表示されていたのに、なぜ md2 は [_U] として表示されるのでしょうか。sdb3 を追加するとデータが失われるのではないかと心配です。ここでの私の考えは、最初のスロット ([U_]) は mdadm によってプライマリとして認識され、2 番目のスロット ([_U]) はセカンダリとして認識されるため、sdb3 と一致するようにデータが削除されるのではないかと心配しているということです。

お知らせ下さい。

ありがとう。

答え1

私は心配していません。ここで起こったことは、md3が次のようなコマンドを使用して作成されたのではないかと思います。

mdadm --create /dev/md3 -l 1 -n 2 /dev/sda4 /dev/sdb4

そしてもう一つは

mdadm --create /dev/md2 -l 1 -n 2 /dev/sdb3 /dev/sda3

他の 2 つの配列 (md0 と md1) も sdb、sda の順序になっていることに注意してください。

極度に心配な場合は、ファイルを外付けドライブにバックアップしてください。しかし、最終的に

mdadm /dev/md2 -a /dev/sdb3

新しいパーティション (/dev/sdb3) が既存のパーティション (/dev/sda3) と同期されるため、回復はスムーズに進行します。リスト内の位置は重要ではありません。Linux ソフトウェア RAID は、有効だったパーティションと最新の (完全に同期されていない) パーティションを記憶します。

関連情報