30 分ごとに SmartD メッセージが届きます/var/log/messages
:
smartd[3588]: デバイス: /dev/sdc、176 現在読み取り不可 (保留中) のセクター
このドライブ (sdc) は、mdadm で構成された RAID 5 の一部です。mdadm モニターは RAID が正常であることを示していますが、ドライブを変更する必要があるかどうかを知りたいです。また、このセクターを不良としてマークする必要がある場合、または OS がすでにマークしている場合もあります。
ドライブを変更する必要がある場合、交換用のドライブをどのように選択すればよいですか? ハード ドライブの仕様にブロック数が見つからないため、元のドライブよりもブロック数が少ないドライブを選択すると問題が発生します。
答え1
はい、ドライブを変更してください。
読み取り不可 (保留中) セクターは、内容を読み取ることができなかったセクターです。通常の非 RAID 状況では、読み取りエラーが発生するか、ドライブがセクターの読み取りを何度も試行して成功するまで (または最終的に諦めるまで) 長時間の遅延が発生します。
RAID では次の 2 つのことが起こります。
- ディスクはおそらく短い TLER 値で設定されています。そのため、妥当な時間内にそのセクターの読み取り試行を中止します。(これにより、長時間のハングアップを防止します)。
- RAID アレイは障害を検知し、別のディスクからデータを読み取ります。これが RAID 5 の利点です。予備のコピーがあるのです。
あなたがやりたいことは次のとおりです:
- バックアップを確認してください。バックアップは必要ありませんすべてがうまくいけば。
- 同等かそれ以上のサイズの交換用ディスクを用意します。 でサイズを確認できます
smartctl -a /dev/sdc
。サイズ X のすべてのドライブの容量が同じであると想定しないでください。メーカーは端数を好むため、500 GB のドライブが別の 500 GB のドライブよりも小さい可能性があります。 - 問題のあるディスクをオフラインにします。(
mdadm --manage --remove /dev/mdX /dev/sdc
) - ディスクを新しいハードウェアに交換し、アレイを自動的に再構築します。(
mdadm --add /dev/mdX /dev/sdc
)
大容量のディスクを使用した場合、これにはかなりの時間がかかります。RAID アレイを最初から再構築し、バックアップから復元する方が早い場合もあります。(まずバックアップをテストしてください。)
RAID の再構築中は冗長性がなくなります。そのため、別のディスクが故障すると (たとえば、再構築の負荷により)、問題が発生します。これは、大容量ディスク (再構築に長い時間がかかる) や、同じ日付のドライブのバッチで発生することがあります。
答え2
受け入れられている答えは一般的には適切ですが、mdadm 3.3 以降では、障害のあるドライブを最初に削除しなくても、アレイ内のドライブを交換できます。障害のあるドライブがほとんど読み取り可能である場合、これによりほとんどの二重障害から保護されます。
sdd が新しいドライブであると仮定して、ポイント 3 と 4 の代わりに次の操作を実行します。
- 新しいドライブをアレイに追加し、障害のあるドライブを新しいドライブに交換します: mdadm /dev/mdX -add /dev/sdd --replace /dev/sdc --with /dev/sdd
利用可能なすべてのデータを使用して再構築が開始され、準備ができたら障害のあるドライブや古いドライブが削除されます。
さらに、新しいアレイを作成するときは、物理デバイスごとに 1 つの大きなパーティションを作成し、raw デバイスではなくパーティション上に RAID アレイを作成することをお勧めします。