Ubuntu Weekly Recipe

第391回 ConkyでデスクトップPCの情報をモニタリングする

この記事を読むのに必要な時間:およそ 7 分

Conkyとはデスクトップ上で動作する,高いカスタマイズ性を誇るシステムモニターツールです。Ubuntu Weekly Recipeマニアの方でしたら,第9回に余談としてちらっと登場したことを覚えているかもしれませんね。

Unityのデスクトップ環境であれば,時計,バッテリー残量,ネットワークの状態といった様々な情報はインジケーターに表示されますし,アプリケーションによってはnotify-osdによってデスクトップに通知が表示されます。ですがもっと細かい情報を表示したい場合や,(XmonadやAwesomeのような)他のウィンドウマネージャーを利用する際には,Conkyが役に立つケースも多々あります。今週のレシピでは,そんなConkyの使い方とカスタマイズ例を紹介します注1,2)⁠

注1)
なんと今まで紹介していなかったことに筆者も驚きました。
注2)
Conkyも例に漏れず「エンジニアが最適な環境を求めて延々と設定ファイルをいじり続けてしまう」系のソフトウェアです。用法,用量を守り,計画的にご利用ください。

Conkyのインストール

ConkyはUniverseリポジトリにパッケージが用意されていますので,aptでインストールすることができます。ここで注意点が一つあります。apt-cache search -nで検索するとわかりますが,conkyと名のつくパッケージには

  • conky
  • conky-std
  • conky-cli
  • conky-all

の4つが存在します。このうちconkyパッケージはtransitionalパッケージで,あとの3つが実際にバイナリを含むパッケージです。つい名前からしてconkyパッケージをインストールしてしまいそうになりますが,そうすると依存関係により,実体としてはconky-stdパッケージがインストールされてしまいます。しかしconky-stdパッケージでは一部の機能,具体的にはRSSリーダー機能などを利用することができません。特別な理由がなければ全機能が有効になったconky-allをインストールしておくと,不要なハマりを回避することができるでしょう。

Conkyのインストール

$ sudo apt-get install conky-all

Conkyの起動

それでは実際にConkyを起動してみましょう。端末からconkyとタイプして起動してみてください。画像のように,ホスト名やCPUの情報,メモリ使用量,プロセスのリストなどがデスクトップ上に表示されるはずです。しかしLauncherに表示が被ってしまってよく見えないし,ウィンドウはチラチラと点滅するし,はっきり言って邪魔なだけですよね。Conkyはデフォルトで/etc/conky/conky.confを設定ファイルとして読み込むのですが,この設定はあくまでサンプルであり,とてもそのまま使えるものではありません。次節以降では,Conkyを自分用にカスタマイズする具体的な設定方法を紹介していきます。

図1 初期状態のConky

図1 初期状態のConky

さてその前に。Conkyはデスクトップに常駐して情報を表示するタイプのアプリケーションですから,Dashや端末から手で起動するのではなく,ログイン時に自動的に起動するほうが嬉しいでしょう。Ubuntuであればgnome-session-propertiesから,自動的に起動するプログラムとして追加しておくとよいでしょう。Conkyのバイナリは/usr/bin/conkyですが,gnome-session-propertiesからこのバイナリを直接起動しようとすると,タイミングによっては起動に失敗することがあります。これはログイン後,少し時間を空けてからConkyを実行することで回避できますので,もしも起動に失敗するようなことがあったら,sleepを挟んだラッパースクリプトを用意してみてください注3)⁠このスクリプトを~/bin/conky.shなどとして配置し,gnome-session-propertiesに登録してください。

注3)
後述するConky Managerでも,起動スクリプトには20秒のsleepが挟まれています。
#!/bin/sh

# 適当な秒数sleepする
sleep 15
/usr/bin/conky

図2 gnome-session-propertiesの起動

図2 gnome-session-propertiesの起動

図3 Conkyを登録

図3 Conkyを登録

著者プロフィール

水野源(みずのはじめ)

Ubuntu Japanese Teamメンバー。理想のフリーデスクトップ環境を求めて東へ西へ……のはずが,気がついたら北の大地で就職していたインフラ寄りのエンジニア。株式会社インフィニットループ所属。

コメント

コメントの記入