CentOS5.2を使ったサーバのレスキューモードでの手順(訓練メモ)
LinuxのソフトウェアRAIDや論理ボリュームを使ったマシンのリカバリ作業なんて経験ないから、なにかあってからでは怖いので、
ためしに同じ構成をVMWareで作ってリカバリ作業を試してみた。
結論的には、いくつか注意事項がわかったので、なにかあったときのためのメモを残す。
RAID構成をフロッピー等に保存しておく。
mdadm.confはレスキューモードで必要である。
mdadm.confがなくても通常の運用は何の問題もなく、何のためにあるのかいまいちわからなかった。
実際、レスキューモードでも両方のRAID1デバイスが生きていれば問題なく、/mnt/sysimageにマウントしてくれる。
ところが、RAIDデバイスの片方が死んでいたりすると、レスキューモードではRAIDデバイスを認識せず、結果、/mnt/sysimageには何もマウントされない。
RAIDデバイスが死んでいるので、/dev/md0 とかも使えない。
これではメンテナンスができない。
RAIDデバイスを認識させるには、RAIDの構成情報を納めたconfファイルがあると簡単なようである。
(ない場合は、どうするのかわからない…。地道にデバイスを指定してゆけば認識できるらしいけれど??)
なので、とりあえずmdadm.confファイルだけはバックアップをとっておく必要がありそうだ。
論理ボリュームマネージャをアクティブにする
レスキューモードで立ち上がったときに/dev/md? が認識されていなければ、その下にある論理ボリュームもアクティブになっていない。
論理ボリュームの構成そのものはデバイスのスーパーブロック上にテキストとして埋め込まれているらしくて、デバイスさえ見える状態になっていれば認識させるのは簡単らしい。
でも、一応、論理ボリュームの構成を保存する方法があるらしいので、これも保存しておいたほうが良さそうだ。
論理ボリュームの構成を保存する。
lvm vgcfgbackup -f lvm.conf
で論理ボリュームの代替パックアップファイルを作成しておく。
これは念のため。たぶん、これを明示的に使うことはないと思う。
論理ボリュームの構成がかわるたびに自動的に実行され、ふだんは気にすることはないらしい。
論理ボリュームマネージャをアクティブにする。
RAIDデバイスが見えている状態で、LVMが開始されていないのならば、
lvm pvscan lvm vgscan lvm lvscan
を順に実行して論理ボリュームをスキャンすれば、たぶん、認識はできる。
だめなら、lvm vgcfgresroteとかで保存した構成ファイルを使うのかもしれないが、未確認。
認識できたら、
lvm vgchange -a y ...
でLVMを開始できる。
論理ボリュームをマウントする
あとは、いつもどおりにマウントすればよい。
mount -o ro /dev/VolGroup00/LogVol00 /mnt/sysimage