Ubuntu 18.04 GNOME ShellのWindow manager warning対策

投稿者: | 2022年4月16日

仕事場で使っている Ubuntu デスクトップ機には、「 Window manager warning 」がログを埋め尽くし、 GNOME Shell がヘロヘロになる、と言う長年の持病が存在します。決定的な解決策は見つかりませんが、現実的な改善策をいくつか試してみます。

Window manager warning

Lenovo ThinkCentreに廉価ビデオカードNvidia GT218を載せ、デュアルモニタで仕事機メインとして使っているUbuntu 18.04デスクトップには長年の持病があり、起動ログイン後から次のような警告メッセージがログを埋め尽くして、レスポンスが悪くなります。

図1.大量のWindow manager warningエントリ

図1.大量のWindow manager warningエントリ



グラフィック関連のハードウェアとシステムの概要な次の通りで、ドライバはnouveauを使用。

 

暫定対策はGNOME Shellのリセット

発作のように止まらない警告を止めるために、いつも次の要領でGNOME Shellをリセットしています。

Alt+F2 キーでプロンプトを出して「 r 」と入力。

図2.Alt+F2でプロンプト呼び出し

図2.Alt+F2でプロンプト呼び出し

すると一瞬「再起動中」と表示されて画面がぼやけた後、ほどなくGNOME Shellの再起動が終わると正常に戻ります。

図3.Gnomeシェル再起動中

図3.Gnomeシェル再起動中

 

ログイン後に自動リセット

この作業をPC再起動の度に手動で行うのも疲れるので、自動化する手法をずっと探していたのですが、ようやくこちらのフォーラムに出会いました(Great Tnx!!)。

それは上項で暫定対策したキー操作を xdotool というツールが再現してくれるものです。

これをログイン後しばらくしてから自動実行する仕組みには、「自動起動するアプリケーションの設定」(gnome-session-properties)を使います。アプリケーションの検索で「session」と打ち始めるとピックアップされてくるはずです。

図4.アプリケーションの検索

図4.アプリケーションの検索

GNOME Shellをリセットするスクリプトファイル作り、それを自動起動するプログラムとして次のように登録します。

図5.自動起動するアプリケーションの設定

図5.自動起動するアプリケーションの設定

この設定は ~/.config/autostart/ へこのように格納されています。

そして肝心の実行スクリプトはこちら。ログイン後ある程度(最低5分以上)経過していないと、リセットしてもまたしばらくすると警告メッセージが再発する傾向にあることが分かったので、効果を確かめながら sleep の待機時間を調整しました。

 

もう1つのリセット方法

上項の自動実行について調べている際に見つけたのが、こちらの記事で紹介されているGNOME Shellリセットコマンドです。

先ほどのバッチファイルの中身をこの1行に置き換えてもリセット可能なのはもちろん、ssh経由でリモートから入っても、そのシステムのGNONE Shellをリセットすることが出来るので、VNCなどによる遠隔操作時に重くなってきた場合に役に立ちそうです(上述の xdotool は今いるセッションでのみ有効なのでsshでは使えず)。

 

dconf-editorでdash-to-dockのホットキーを無効に

最後に上述のフォーラムの別の回答で提示されていた、dash-to-dockのホットキーを無効にする方法も試してみます。

dconf-editorを開いて次のパスを辿り、

hotkeys で始まる3つのパラメータを全てオフにするだけ。効果のほどは正直感じられないのですが、使わない機能なので害にもなりません。

図6.dash-to-dockホットキーを無効に

図6.dash-to-dockホットキーを無効に

 

 

ここまで対策することで警告メッセージもだいぶ減り、システムも落ち着きました。例外としては、VMwareやKVMなど仮想マシンの画面を開いて操作している間に、多少「Window manager warning」が再発することぐらい。それもGNOME Shellが重くなったりすることは無いので十分許容範囲です。

 

 

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA