ubuntuのgnomeのpanelが大暴走

ヘッドレスのマシンにVNCで入ってデスクトップを使う、ということをしている。

Ubuntu 9.10にアップグレード後は日本語変換がibusに変わっていろいろ変だったりするんだけど、とりあえず安定してきたので、デスクトップ環境をいじりだした。

MacBookは横長画面なので、Ubuntuのように画面上下にパネルを出されると、結構狭い。だからこれらのパネルを「自動的に隠す」にしてみたところ…パネルがぜんぜん出てこなくなっちゃったw。VNCでは画面のギリギリいっぱいまでカーソルを持っていってくれないっぽい。

困りながらいろいろ触っていたら、カーソルを下までドラッグすることで、下辺のパネルは出てきた。でも上辺のパネルは同じことをしても出てこない。

それで考えてみた。上のパネルが出てこないのはカーソルが近くに行かないからだ。でも、これってカーソルじゃなくてもいいのではないか。panelから見てカーソルに準ずる存在感がある物なら出てくるような…というわけで、下辺のパネルを上に持っていってみることにした。

試してみたら、上のパネルが出てきた!…と思ったんだけど、なんか下のパネルとも重なってるように見える。二つのパネルが重なった状態で猛烈にガタガタしてるみたいなのだ。

パネルは見えてるというのに、操作は受け付けない。xtermのtopで見てみると、CPU使用率が80%くらい行ってる。ちょっと面倒なので、gnome-panelをkillしてみたが、すぐまた自動で上がってくる。そしてプロセスIDは変わっているのに、まったく同じように暴走している。

panelにマウスカーソルを置いてクリックし続けるとか、killの直後にすばやくクリックして操作とか、いろいろやってみたけど、どうしても操作できない。これは結構とんでもない現象に当たってしまったのではないか。

しかたなく「gnome-panel 暴走」でググってみたら見つかった。これ: 2bangai.net

ためしに ~/.gconf を mv してログインし直したら元に戻ったので、
~/.gconf 以下を find grep して、auto-hide でひっかかり、かつ "true"
となっている箇所を "false" にしてログインし直したところ、
タスクバーが自動的に隠れないように戻り、cpu 100% 問題も解決した。

とのこと。

それで、自分でもgrep -r "auto-hide"とやってみたのだが、見つからない。結論から言えば、これは"auto_hide"だった(スラッシュとアンダーバーの違い。アンダーバーが正解)。なにか単語が違うかも、と短くしていって grep -Ri 'hid' .gconf/ とやったところで見つかった。ファイルは

~/.gconf/apps/panel/toplevels/top_panel_screen0/%gconf.xml ← このファイルの

で、エントリはこれ:


最後のtrueをfalseにしてVNCを落とし、また起動したら解決した。この現象は下のパネルを上に持っていくことで起きたけど、下のパネルの設定ファイル .gconf/apps/panel/toplevels/bottom_panel_screen0/%gconf.xml では、このエントリはfalseだった。

さて、デスクトップをどうしよう。画面は広い方がいいが、あまり操作が不便になっても仕方ないので、上のパネルは出したままにすることにした。下のパネルは自動で隠しても出せる。でも、画面の下辺にカーソルを持っていくと、操作してるMacの隠れていたDockまで自動で出てきちゃってすごく操作しにくい。

そんなわけで、下のパネルの機能のうち「デスクトップの表示」は捨て。「ウィンドウ・セレクタ」と「ワークスペース切り替え器」は上のパネルに移動。これで下のパネルはゴミ箱だけになったので、「広げる」をやめた上で144pixel幅にし、画面の右下端に移動。単なる「自動で隠れるゴミ箱」に変えた。144pixel幅にしたことで、Dockが一緒に出てきても距離が取れ、Dockだけまた自動で隠れてくれるようになった。

上のパネルは、右端にあるユーザー名とオンオフボタンのindicator-applet、時計といったパネルを削除してスペースを稼ぎ、「ウィンドウ・セレクタ」「ワークスペース切り替え器」を持ってきた。

まあ、こんなもんなんじゃないかな。