SA(8)

名称
sa - システムアカウント統計情報を表示する

書式
sa [-abcdDfijkKlmnqrstu] [-v cutoff] [file ...]

解説
sa は、システムアカウント統計情報の表示と、アカウント情報ファイルの 維持管理を行います。

sa ユーティリティを使えば、 /var/account/acct に含まれる情報を、 サマリファイル /var/account/savacct と /var/account/usracct に 凝縮して収めることができます。これらのファイルには、コマンド名やユーザ ID にもとづいたシステムの統計情報が記録されます。 これらのサマリファイルは、 /var/account/acct が 1 日に数百ブロックも大きくなるような利用者の多い システムでは必要になります。 通常、アカウント情報ファイルの前にサマリファイルを読み込むため、 レポートには全ての保存されている情報が含まれます。

file が与えられると、 /var/account/acct のかわりにそのファイルが読み込まれます。 各ファイルが読み込まれたあと、サマリファイルを更新する 必要があればディスクにセーブされます。 最後のファイルが処理されたあと、報告が表示されます。

個々のオプションで指定されるものを除いて、以下に示すラベルが出力で使われます。

avio
    実行時の I/O 操作の平均回数

cp  ユーザ時間とシステム時間の合計 (単位:分)

cpu cp と同じ

k   CPU 時間1秒あたりのメモリ使用量 (単位:KB)

k*sec
    CPU 時間で積分したメモリ使用量 (単位:1KB秒)

re  実時間 (単位:分)

s   システム時間 (単位:分)

tio I/O 操作の合計回数

u   ユーザ時間 (単位:分)

オプション:

-a  全コマンド名を表示します。表示できない文字を含んだコマンドなども含みます。 デフォルトでは表示できない文字を含むコマンドは、``***other'' に含まれます。

-b  コマンド統計情報を表示する場合、ユーザ時間とシステム時間の合計を コマンドの呼び出し回数で割った値でソートして表示します。

-c  表示される呼び出し回数・実時間・CPU 時間それぞれに関して、コマン ド全体に対するそのコマンドの割合をパーセンテージ表示します。

-d  コマンド統計情報を表示する場合は、ディスク I/O 操作の平均回数でソートします。 ユーザ統計情報を表示する場合は、各ユーザのコマンドあたりのディスクI/O操作回数を表示します。

-D  コマンド統計を表示する場合は、ディスク I/O 操作の合計回数でソートします。

-f  -v を使用する際、ユーザに問い合わせを行いません。

-i  サマリファイルを読みません。

-j  各コマンドの合計時間 (単位:分) の代わりに、 各コマンドの消費時間 (合計時間/呼び出し回数; 単位:秒) を 表示します。

-k  コマンド統計情報を表示する場合は、CPU 時間 1 秒あたりのメモリ使用量で ソートします。 ユーザ統計を表示する場合は、 CPU 時間 1 秒あたりのメモリ使用量を表示します。

-K  コマンド統計を表示する場合は、CPU 時間で積分したメモリ使用量を表示し、 これでソートします。

-l  システム時間とユーザ時間を別々に表示します。普通は合計して表示されます。

-m  コマンド統計情報のかわりに、ユーザ統計を表示します。

-n  呼び出し回数でソートします。

-q  エラーメッセージ以外の出力は行いません。

-r  逆順でソートします。

-s  データをサマリファイルに加えたあと、アカウント情報ファイルを空にします。

-t  各コマンドごとに、実時間/CPU 時間 (システムとユーザ時間) の値を表示します。 CPU時間が小さすぎる場合は、``*ignore*'' が表示されます。

-u  他のオプションを打ち消して、アカウント情報ファイルからユーザ ID、 CPU を使用した合計秒数、合計メモリ使用量、I/O 操作回数、コマンド名 を表示します。

-v cutoff
    cutoff 時間以下のコマンドについて、 コマンド名を表示し、ユーザに問い合わせを行います。 返答として ``y'' で始まる文字列を入力すると、 そのコマンドは ``**junk**'' に分類されます。 このオプションは、報告のなかから意味のないコマンドを 取り除くために使われます。

デフォルトでは、コマンド統計を表示します。 各行には、コマンドの呼び出し回数、コマンドの経過時間 (分)、 ユーザ時間とシステム時間を合計した CPU 時間、 平均の I/O 操作回数、CPU 時間 1 秒あたりのメモリ使用量、 コマンド名が列挙されます。 -m が指定された場合は、ユーザ統計を表示します。 それぞれの行は、各ユーザのユーザ名、コマンド実行回数、 合計 CPU 時間 (分)、合計I/O操作回数、 CPU 時間で積分したメモリ使用量から構成されています。 もし -u が指定されると、アカウント情報 ファイルに記録されている各エントリを表示します。 各行は、ユーザ ID、CPU 時間 (秒)、CPU 時間で積分したメモリ使用量、 I/O 操作回数、コマンド名から構成されています。

-u が指定されると、 -q を除いて、他のオプションは無視されます。 -m が指定されると、 -b, -d, -i, -k, -q, -s フラグだけが認識されます。

診断

関連ファイル
/var/account/acct
    生のアカウント情報ファイル
/var/account/savacct
    コマンドごとのサマリデータベースファイル
/var/account/usracct
    ユーザごとのサマリデータベースファイル

関連項目
lastcomm(1), acct(5), ac(8), accton(8)

バグ
このプログラムのオプションには不合理なものがいっぱいあります。特に オプション文字は、機能とあまり関係がありません。

各ラベルにはもっと一貫性があるべきです。

仮想メモリ (VM) システムでは、CPU 時間で積分したメモリの使用量は記録されません。

警告
この sa のオプションは、オリジナルの sa をもとに していますが、内部的にもですが明らかに外部的にも変更点があります。 特に -q が追加され、 -m は以前よりも多くのオプションが利用可能です。

サマリファイルのフォーマットはオリジナルのものから変更されていますが、 ユーザ id が 32ビットになってアカウントのフォーマットも変更されているので、 これは問題ありません。

作者
Chris G. Demetriou <cgd@postgres.berkeley.edu>