Linuxユーザの立場から、役立つ情報や困ったときの解決方法を分かりやすく、かつ簡潔に記事にまとめています。主に、Ubuntu 8.04(→9.04)やCentOS 5.2(→5.3)で確認したことですが、他のディストリビューションでも応用できると思います。内容は(1)設定ファイルの書き方(2)役立つソフトウェア紹介やインストール方法(3)便利なコマンドの使い方や活用例(4)困ったときの解決方法です。このページの末尾にキーワード別で記事を分類してあります。また、真上の「ブログ検索」フォームからブログ内の記事を検索できます。

2008年12月28日日曜日

scimがCPUを占有 このエントリーを含むはてなブックマーク

本記事は、ubuntu 8.04でscimがCPUを占有してシステムが入力を受け付けなくなる現象についてまとめる。

原因とそれの(必要十分な)解決策がよく分かっていないから、 途中経過なども含めて多少冗長な内容でまとめている。 (ヒントになりそうな情報が漏れないように)

症状

ubuntu 8.04を入れているマシンで作業中に、突然動作が極端に遅くなった。 システムモニターで確認したところ、scim-bridgeのCPU占有率が極端に高くなっていた。 Ctrl-Alt-Delでログアウトして、再ログインするとgnomeの起動中にフリーズしてしまった。 自動起動してあったxosviewでは、CPU占有率が100%になっていた。

~/.xsession-errorsには

Start IM through /etc/X11/xinit/xinput.d/ja_JP linked to /etc/X11/xinit/xinput.d/scim-bridge.
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 209 requests(70 known procesed) with 0 events remaining
と書かれていた。

調査

xtermを.xsessionrcで自動起動するように設定しておくと、gnomeの起動中でフリーズした際でも作業ができるので(gnome-terminalではプロンプトが現れなくて使えなかった)、

$ ps aux | less
でプロセスを確認してみると、scim-launcherとscim-bridgeがそれぞれ50%ほどの占有率だった。

ネットで調べてみると、次の2つの方法が見つかった。

  1. ~/.anthy/last-record2_defaultの末尾の行を削除する(あるいはこのファイル自体を削除する) このファイルはかな漢字の変換の履歴を保持するファイルらしい。
  2. /tmp以下のディレクトリおよびファイルをすべて削除する

方法

2の方法を最初にやってみると、途中でフリーズせずにgnomeが完全に立ち上がったが、その後に作業しているとscimのCPU占有率が100%ほどになった。したがって、1の方法で、~/.anthy/last-record2_default.utf2の末尾の行を削除してみた。

すると次からはCPU占有率が極端に高くなることはなくなった。 しかし、上で試行錯誤しているときにシステムモニタでCPUを占有していたscim-launcherとscim-bridgeを停止させていたので、もしかしたらその効果もあるのかもしれない。。。

気になったこと

システムモニターで起動プロセスを確認してみると、二重あるいは三重で同じものが起動しているものが見られる。それらのプロセスは、上で出てきたscim-launcherやscim-bridge、他にはgconfd-2, scim-panel-gtk, scim-helper-manager, update-notifierがあった。 これらを複数起動する必要が分からない。

参考サイト:

0 コメント:

キーワード

キーワード別に記事を分類してあります。クリックすると各キーワードに該当する記事たちが表示されます。

筆者について

自分の写真
趣味はコンピュータ、音楽、写真などです。