2010年07月27日(Tue) 体調悪いですなー [同日]
● [memo] Ubuntu 10.04が起動する時のOOM Killerが発動しないようにする
Ubuntu 10.04 DesktopをDell PowerEdge 1900にインストールしている。 OOM Killerを発動させちゃうサービス(plymouthとureadahed)を、 下記のように/etc/init以下のファイルの名前を変えて止めた。
インストール後起動する画面を眺めていると、oom-killerがどうした、と 不吉なメッセージが見えた。dmesgを見ると、
[ 5.683285] Out of memory: kill process 364 (plymouthd) score 38 or a child [ 5.683288] Killed process 364 (plymouthd)
とか
[ 5.399938] ureadahead invoked oom-killer: gfp_mask=0xd0, order=0, oom_adj=0 [ 5.400013] ureadahead cpuset=/ mems_allowed=0
とか。 本質的にはこのあたりのプロセスが落ちても大きな影響は無いのだと思うのだけれど、 将来のトラブルシューティングの時にひっかかる (事情を知らない人が見てこれも問題だと思う) と嫌なのでつぶしておきたい。
plymouthdについてはカーネルオプションにnoplymouthを与えると良いという記事もみかけたのだが、手元では期待通りには変化しなかった。 自作デーモンをこのマシンで走らせておく必要もあり、upstartについて少し勉強したので、upstartの設定ファイルをいじって起動しないようにしてみることにした。
upstartは
これまでLinuxで広く使われていたSysVinitを置き換える機構のようで、
サービスを記述したファイルを
$ for f in /etc/init/plymouth*.conf; do sudo mv $f $f.nouse; done $ for f in /etc/init/ureadahead*.conf; do sudo mv $f $f.nouse; done
この状態で再起動すると、 期待通り、dmesgに不吉なメッセージは見られなくなった。
ついでに、
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
の行を
GRUB_CMDLINE_LINUX_DEFAULT="nosplash nofb"
にして、
sudo update-grub
した。これで起動時にカーネルのつぶやきが見えるようになった。 依然として画面がまっくらになる時間があるのが残念だけれど。
最近のツッコまれどころ