Kernel panic 後に再起動しない
FreeBSD9.0 でディスクアクセスのエラーで Kernel Panic するとAutomatic reboot in 15 seconds - press a key on the console to abort (15秒後に再起動します - 中断する場合はコンソールでキー入力してください)
という表示が出る。しかしそのまま15秒待っていても自動で再起動しない問題が発生 (mdconfig コマンドで作成した RAMDISK に書き込んだ時にも Kernel Panic が発生して、同様の現象になったことがあった)。
これでは、サーバが遠隔地に置いてあると、電源を入れなおしに行かなくてはいけない。
対策
とりあえずの解決策は以下の通り。ただ、対症療法なので、本当にこれでいいのかは不明だし Kernel の再構築が必要で大変。もっと適切な方法を知っている方がいたら教えてください。Kernel panic 時に即座に再起動させるには(FreeBSD9.0)
- オプションに "options DDB"を付けて Kernel を再構築する
- /etc/rc.local を作成して /sbin/ddb script kdb.enter.panic=reset と書く
- # chmod a+x /etc/rc.local
補足
カーネルパニック時に再起動させる方法について検索したところ、Linux の情報は見つかったが、FreeBSD については見つけられなかったのでこの記事を書いた。掲示板には FreeBSD では# ddb script kdb.enter.panic=resetを実行しておけばよいという書き込みがあったが、これを GENERIC のカーネルで実行すると
ddb: sysctl: debug.ddb.scripting.scripts: No such file or directoryというエラーが出てうまくいかなかったので、オプションに "options DDB" を付けてカーネルの再構築をした次第。
デバッガについては知識がなくて、どうしてこの方法でうまくいくのかは分からない。またそもそもなぜ最初の状態で、15秒後に自動で再起動できないのかも分からない。
0 件のコメント:
コメントを投稿