メモリの占有率を、プロセス別に見た目にもわかりやすく表示させたいことがあるが、そんなときに使えそうなのがこの「pagemon」だ。
Canonical製のツールらしく、主にUbuntuで利用することが想定されているプログラムなのだが、どのプロセスがどのメモリ空間を専有しているのか、バイナリエディタのようにターミナル上に表示してくれるツールだ。
今回は、実際にUbuntu Server 16.04 LTSにこのツールを導入し、ターミナル上に表示させてみる。
1.インストール
以下のコマンドでapt-getでリポジトリを導入し、pagemonをインストールする。
sudo add-apt-repository ppa:colin-king/pagemon
sudo apt-get update
sudo apt-get install pagemon
lacknon@BS-PUB-DEVELOP:~$ sudo add-apt-repository ppa:colin-king/pagemon
[sudo] blacknon のパスワード:
Page monitoring tool
詳しい情報: https://launchpad.net/~colin-king/+archive/ubuntu/pagemon
[ENTER] を押すと続行します。ctrl-c で追加をキャンセルできます
gpg: 鍵リング「/tmp/tmp6pevev0e/secring.gpg」ができました
gpg: 鍵リング「/tmp/tmp6pevev0e/pubring.gpg」ができました
gpg: 鍵B0F01786をhkpからサーバkeyserver.ubuntu.comに要求
gpg: /tmp/tmp6pevev0e/trustdb.gpg: 信用データベースができました
gpg: 鍵B0F01786: 公開鍵"Launchpad PPA for Colin King"をインポートしました
gpg: 処理数の合計: 1
gpg: インポート: 1 (RSA: 1)
OK
blacknon@BS-PUB-DEVELOP:~$ sudo apt-get update
ヒット:1 http://jp.archive.ubuntu.com/ubuntu xenial InRelease
ヒット:2 http://jp.archive.ubuntu.com/ubuntu xenial-updates InRelease
ヒット:3 http://jp.archive.ubuntu.com/ubuntu xenial-backports InRelease
取得:4 http://security.ubuntu.com/ubuntu xenial-security InRelease [93.3 kB]
取得:5 http://ppa.launchpad.net/colin-king/pagemon/ubuntu xenial InRelease [17.6 kB]
取得:6 http://ppa.launchpad.net/colin-king/pagemon/ubuntu xenial/main amd64 Packages [438 B]
取得:7 http://ppa.launchpad.net/colin-king/pagemon/ubuntu xenial/main i386 Packages [439 B]
取得:8 http://ppa.launchpad.net/colin-king/pagemon/ubuntu xenial/main Translation-en [224 B]
112 kB を 1秒 で取得しました (66.0 kB/s)
パッケージリストを読み込んでいます... 完了
blacknon@BS-PUB-DEVELOP:~$ sudo apt-get install pagemon
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
pagemon
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 31 個。
17.8 kB のアーカイブを取得する必要があります。
この操作後に追加で 47.1 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu xenial/universe amd64 pagemon amd64 0.01.08-1 [17.8 kB]
17.8 kB を 0秒 で取得しました (180 kB/s)
以前に未選択のパッケージ pagemon を選択しています。
(データベースを読み込んでいます ... 現在 91637 個のファイルとディレクトリがインストールされています。)
.../pagemon_0.01.08-1_amd64.deb を展開する準備をしています ...
pagemon (0.01.08-1) を展開しています...
man-db (2.7.5-1) のトリガを処理しています ...
pagemon (0.01.08-1) を設定しています ...
blacknon@BS-PUB-DEVELOP:~$
これでpagemonがインストールできた。
2.実際に使ってみる
さて、それでは実際にpagemonを使ってみよう。
以下のようにコマンドを実行することで、対象のプロセスの情報を見ることができる。
sudo pagemon -p <プロセス名 or PID>
以下は、sshdを指定して実行した結果。
カーソルをあわせ、Enterキーを押下することでより詳細な内容を見ることもできる。
使いドコロが難しいけど、デバックの時なんかには役に立ちそうなコマンドだ。