アカウントとひと口に言っても、利用形態には人が操作を行いログインするだけでなく、chrootなど特定のサービスで利用される場合もある。
これらの利用統計に便利なのが「sa」コマンドだ。このバイナリは、RPMの場合には「psacct」パッケージに含まれている。まずはシステムにインストール済みかを確認しよう。
# rpm -qa|grep psacct psacct-6.3.2-27 |
存在しない場合には、システムCD-ROMやISOファイル、「SpeakEasy.Rpmfind.Net」などで検索するとよい。
デーモン実行後には、すぐさまログ記録が開始される。起動直後はシステムロードが高くなりがちだが、数十分で安定するだろう。
# /etc/rc.d/init.d/psacct start プロセスアカウントを開始中 [ OK ] |
ログ記録先は、「/var/account/pacct」ファイルになる。このファイルはバイナリのためtailコマンドなどで覗くことはできない。
しばらく時間を置くと、次のような統計が見られるようになる。
# sa -m 6104 156.12re 1.38cp 0avio 1072k root 5888 61.51re 1.15cp 0avio 1052k xxxx 153 46.22re 0.22cp 0avio 2058k apache 9 0.03re 0.01cp 0avio 837k uucp 27 0.12re 0.00cp 0avio 478k postfix 17 43.25re 0.00cp 0avio 756k mailscan 9 4.92re 0.00cp 0avio 445k sshd 1 0.08re 0.00cp 0avio 1223k |
それぞれの項目は、1行目に総合値が並び、2行目からはアカウントごとの統計になっている。それぞれの意味は、左から「アカウント名」、「コマンド実行回数」、「コマンド実行時間」、「CPU利用時間」、「入出力回数」、「メモリ利用量」と並ぶ。
なお、RPMパッケージのインストールであれば肥大化が想像に難しくないsaの統計ログファイル(/var/account/pacct)は、自動的にローテートされるよう設定される。
# cat /etc/logrotate.d/psacct # Logrotate file for psacct RPM /var/account/pacct { prerotate /usr/sbin/accton endscript compress notifempty daily rotate 31 create 0600 root root postrotate /usr/sbin/accton /var/account/pacct endscript } |
Copyright © ITmedia, Inc. All Rights Reserved.