Linuxにはoom-killer(Out Of Memory killer)というSEの天敵がいる。 oom-killerはメモリが枯渇しそうになると プロセスを殺して、メモリの空きを確保しようとする機構だ。 一見するとOSのハングを防止する善人のように見えるが oom-killerは重要なプロセスを殺すときがあるんだよね。 これがやっかい。 この前なんかportmapperが殺されたよ。 この人がいなくなると、NFSとかRPCに関連する機能が動かなくなる。 oom-killerが重要なプロセスを殺さないようにする方法は以下 2.6.11以降のカーネルの場合 以下のようにすると、指定したプロセスはoom-killerの魔の手から逃れることができる。 # echo -17 > /proc/〈プロセスID〉/oom_adj 2.6.Xカーネルの場合 # echo 2 > /proc/sys/