今月の頭にお客さんに収めたサーバ機のハードディスクが1週間で壊れたので、急遽ディスクのリプレースに行ってきました。今回のシステムは Linux の Software RAID で 2 本のディスクを使用して RAID1 を組んでいたのでデータ自体は無事だったのですが、手を離れたと思った瞬間のトラブルは心臓に悪いですね。
めったに行わない作業なので、自分用にメモ。
- RHEL5 のレスキューCD でブート
プロンプトで linux rescue と入力
レスキューモードで起動する - 途中で、既にインストールされている Linux を検出するかを聞かれるので適当に答える
(今回はオフラインで作業するのでマウントはさせませんでした) - 存在するディスクから RAIDデバイスを探す
mdadm -Es > /etc/mdadm.conf
- 見つけた物理デバイスから md デバイスを作成
mdadm --assemble --scan
- ディスクを不良ディスクに指定して取り除く
mdadm --manage /dev/md0 --fail /dev/sdb1 mdadm --manage /dev/md0 --remove /dev/sdb1 mdadm --manage /dev/md1 --fail /dev/sdb2 mdadm --manage /dev/md1 --remove /dev/sdb2
- ここでシャットダウンしてディスク交換
- 交換したら、先程と同様にレスキューモードで起動させる
- 新しいディスクのパーティションを元からあるものと完全にあわせる
- 新しいディスクをアレイに追加
mdadm --manage /dev/md0 --add /dev/sdb1 mdadm --manage /dev/md1 --add /dev/sdb2
- ディスクをアレイに追加すると自動的にリビルドが始まるので、終わるまで待つ
進行状況は下のようにして確認cat /proc/mdstat
リビルドが終わるまでの6時間を客先で待ち続けるのは辛かった。。。