linux,リモートのLinuxで作業している時に,ホストが不安定でrebootもshutdownもできなくなってしまう場合に強制的にリモートのホストを再起動できるよというお話。お使いのPCには「SysRq」と刻印されている謎のキーが有るだろうか?Windowsを使っている場合はほとんど役に立たないキーであるため,大抵はPrintScreenキーに割り当ててあったりするのだが,Linuxの場合は結構役立つ場合がある。Request」キーの省略であり,Wikipediaによれば,IBMのPC/AT規格マシンで導入されたOSより低レベルシステムを直接呼び出すための割り込みを発生させるキーである。したがって,SysRqキーを用いることで,OSがハングアップしてしまった場合でもシステムの再起動等を行うことができるのだが,いずれにせよ使用頻度の問題で使い方を忘れるので備忘録として残しておく。再読込させると設定できる。設定したら,SysRqキー(*1)とEnterを同時に押すことでヘルプが出る(*2)はずである。ちなみに,普通のキーボードではSysRqはAlt+PrtScに割り当たっているらしい。X11上でやると普通にスクリーンショットが起動してしまうので,フレームバッファの端末に切り替えてやりましょう。(Ctrl+Alt+F2等)ちなみに,Linuxの場合のSysRqコマンドの全容は以下の通りである。仮想端末上の全プロセスにSAKを実行。全CPUのトレースコール情報を表示(実際やってみるとちゃんと動くものもあるが,実際にはキーが押された事を示すカーネルメッセージが出るだけで,多分なんかカーネルパラメータを有効化しておかないと効かないのかもしれない。上記のコマンドをechoで書き込んでやれば良いらしい。すると間髪入れずにホストがリブートする。これは電源をいきなり落とすのと何ら変わらないので,以下の手順でディスクを同期してから再起動するのが良さそうである。