ブログ

カーネルパニック発生時に自動的に再起動する方法

at_ito
2015年10月2日 17時33分

アプリケーションやドライバーの作りによりカーネルパニックが発生し、意図通りにソフトウェアが動作しない場合があるかと思います。その際、すでにフィールドに出している製品等ですと復帰ができず困る場合もあるかと思います。

そのような場合の対策として、カーネルパニックが発生すると、自動的に再起動する機能がありますので紹介します。

再起動するための設定

Armadillo起動後、以下のコマンドを実行し、カーネルパニック後に何秒後に再起動するかを設定してください。

[armadillo ~]# echo N > /proc/sys/kernel/panic

※: ("N"は秒数)

上記設定後に、カーネルパニックが発生すると、設定した秒数後に再起動を行います。

参考: oops発生時や、BUG発生時にも再起動したい場合

以下のコマンドを実行することで、oopsやBUG発生時にカーネルパニックになります。 そのため、前述のコマンド実行と組み合わせることでoopsやBUG発生時に再起動ができます。

[armadillo ~]# echo 1 > /proc/sys/kernel/panic_on_oops

参考: テスト用にカーネルパニックを発生させる方法

上記設定後、再起動を試したい場合は、ブログ: カーネルパニックを発生させる方法も合わせてご参照ください。