CentOS などの Linux/UNIX 環境で top コマンドを使ってプロセスの様子を確認することは珍しくないと思いますが、その機能拡張版である htop コマンドを使ってみました。普通の(?)top コマンドではわからない情報も表示してくれて便利です。Mac 環境でも使えます。


RedHat/CentOS 系 OS であれば、導入は yum コマンドで一発ですが、EPEL リポジトリを有効にする必要があります。未導入の場合は最初に EPEL を導入しておきます。以下は CentOS 6 の場合のコマンド例です:
# rpm -ivh http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm (64bit 環境の場合)
# rpm -ivh http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/i386/epel-release-6-8.noarch.rpm (32bit 環境の場合)

リポジトリの導入ができていれば、次のコマンドで htop のインストールもできます:
# yum install htop

シェルから "htop" で実行します:
# htop

こんな感じで起動します。テキストモードですが、画面は色分けされ、top と比べて見やすく表示されています。画面上部に CPU やメモリの様子がテキストグラフィックで表示されていて、これはこれでわかりやすくなっています:
2015032701



実はこの画面内ではカーソルキーが有効になっていて、カーソルキーの上下で特定のプロセスに移動し、F7/F8 でプロセスの優先度を変えたり、F9 で Kill したり、、といった操作もできます:
2015032702

 

F1 キーを押すとショートカットキーコマンドの一覧が表示されます:
2015032703


F5(t) でツリービューにして、+/- で展開/格納したり、といった表示も可能になるようです。試してみるとこんな感じ。カーソルがある行の情報だけが格納されています:
2015032704


F3 キーでプロセスの検索もできます。この図では "/sbin/rsys" まで検索して、カーソル行が rsyslogd のプロセスに移動している様子です:
2015032705


特定のユーザーのプロセスだけを表示する、といった操作も可能です。まず u キーを押して、ユーザーの一覧から目的のユーザーを選んで Enter 、です:
2015032706


インストールも簡単だし、シェル環境では入れておいて損のない、便利なツールだと思ってます。