htopでサーバーのプロセスを確認

PHPプログラマーの松永です。

htopを使用し、メモリ使用率やCPU使用率など現在のシステム状況を表示し確認してみました。サーバープロセス管理の1手段として参考になれば幸いです。

htopはtopの強化版にあたり、topよりもグラフィカルな表示やプロセスの優先度を変更したりすることが出来ます。

バージョン2.0以降からはLinux, FreeBSD, OpenBSD and Mac OS Xに対応しているようです。

公式サイト htop - an interactive process viewer for Unix

目次

環境

CentOS6.9

VirtualBoxとVagrantを使用し、CentOSを立てています。

htopのインストール

インストールはyumのみで完了いたします。

sudo yum install htop

使用方法

topと同じでhtopと打つのみで起動いたします。

htop

topとhtopの表示比較

左がtop、右がhtopの表示です。

見栄えからして既に見やすいところが気に入っています。

メモリ、CPU、スワップの確認

メモリ、CPU、スワップの使用率は画面上部で確認することができます。

赤、緑、青、黄の4色があり、色が示すところは下記になっています。

CPU

  • 青:優先度低
  • 緑:使用量
  • 赤:カーネル使用量

メモリ

  • 緑:使用量
  • 青:バッファ量
  • 黄:キャッシュ量

スワップ

  • 赤:使用量

メモリのキャッシュ削除時の挙動

試しにメモリのキャッシュを削除してみます。

sudo su
echo 3 > /proc/sys/vm/drop_caches

わずかではありますが、黄の部分が減少していることがわかります。

htopもtopと同様にリアルタイムで情報が更新されます。

プロセスの確認

プロセスは画面下部で確認することができます。

画面下部は通常のtopコマンドと同じように、プロセスがリスト表示されています。

上記キャプチャはメモリ使用量順でソートしています。

ソートなどの操作方法は、helpが便利です。

htopが起動している状態でhまたはF1を押下するとhelpが開きます。

色々な表示

画面最下部のF1F2などを使用すると色々な表示にすることがきます。

便利機能

十字キー

topでは、スクロールすることができず、表示できるプロセス数が画面に左右されていましたが、htopでは十字キーを使用し、画面に表示されていないプロセスまで確認することができます。

ユーザーごとのプロセス表示

uを押下するとユーザー一覧が表示され、選択ユーザーが実行しているプロセスのみを表示することができます。

下記キャプチャはuを押下した状態の表示です。

下記キャプチャはユーザーを選択した状態の表示です。

ユーザーの選択は十字キーを使用します。

例として自分を選択してみました。

zshを使用し、tmuxからhtopを使用しているということがわかります。

まとめ

htopを使用し、topがグラフィカルになったことでプロセス確認/監視作業のハードルを下げることができました。

全サーバーでhtopが使用できるわけではありませんが、自分自身も含め、topに苦手意識のある方は是非使ってみてください。

この記事を書いた人 matsunaga 自宅に音楽スタジオがあるとこを夢見るPHPエンジニア
TOP