停電後の復旧

寮で電気設備点検のための停電があったようで、停電によりすべてのPCが強制シャットダウンされていた。DeisyとFeliciaは何事もなく再起動したが、Ceciliaは起動しなくなっていた。

起動時のログを見てみるとローカルファイルシステムのチェックを行う段階でデバイス、正確にはデバイスファイル、が見つからず失敗している。ローカルファイルシステムは/bootを除いてすべてlvmの管理下なのでlvm関連のモジュールが読み込まれていないのかとも思ったが、そうではないようだ。dmsetupではリストアップされるのに/dev/mapperには一切現れない状態だった。仕方ないので、必要になる前に無理やり"/sbin/lvm vgmknodes --ignorelockingfailure"とやってデバイスファイルを作ってやったら、デバイスファイルはudevが作るはずといった趣旨の警告文が出るものの起動した。
起動はしたものの今度はネット関連のデバイスの初期化ができず、ネットワークが使えない。これも同じくudevが作るはずの物がないから起きる事態のようなので、udevを当てにせずmodprobeで該当モジュールを読み込ませたら解決した。どうも起動時に認識したものに対してudevがデバイスファイルを用意していないようなので"find /sys -name uevent -exec dd if=/dev/zero of=$ count=1 \;"としてもう一度udevにイベントを送っておいた。後はこれをrc.sysinitにも追加しておいて起動時に自動実行させたらいいはず。