acct, acctdisk, acctdusg, accton, acctwtmp, closewtmp, utmp2wtmp - アカウンティングおよびいろいろなアカウントコマンドの概要
/usr/lib/acct/acctdisk
/usr/lib/acct/acctdusg [-u filename] [-p filename]
/usr/lib/acct/accton [filename]
/usr/lib/acct/acctwtmp reason filename
/usr/lib/acct/closewtmp
/usr/lib/acct/utmp2wtmp
アカウンティングソフトウェアは、アカウンティングシステムを構築するためのツール群です (C 言語のプログラムおよびシェルプロシージャーから構成される)。acctsh(8) では、C 言語のプログラムのいちばん上に組むシェルプロシージャー群を説明します。
接続時間のアカウンティングは記録を /var/adm/wtmpx (utmpx(5) を参照) に書き込むプログラム群により管理されます。acctcon(8) では、このファイルをセッションおよび課金記録に変換するプログラムを説明します。また、acctmerg(8) では、この課金記録について集約します。
プロセスアカウンティングは、システムカーネルによって行われます。プロセスを終了すると、1 つのプロセスにつき 1 つのレコードが、あるファイル (通常は、/var/adm/pacct) に書き込まれます。acctprc(8) のプログラムでは、課金のためにこのデータを集約します。コマンドの使用状況を集約するには、acctcms(8) を使用します。acctcom(1) を用いて、現在のプロセスデータを調査することができます。
プロセスアカウンティングレコードと接続時間のアカウンティングレコード (または acct.h(3HEAD) で説明されている tacct 形式のすべてのアカウンティングレコード) は、acctmerg (acct.h(3HEAD) の tacct 形式を参照) によって合計アカウンティングレコードにマージして集約できます。prtacct (acctsh(8) を参照) は、任意またはすべてのアカウンティングレコードの書式設定に使用されます。
acctdisk は、ユーザー ID、ログイン名およびディスクブロック数がある行を読み取り、ほかのアカウンティングレコードとマージすることができるアカウンティングレコードの合計に、それらの情報を変換します。入力ファイルが壊れているか、または正しくフォーマットされていない場合は、acctdisk はエラーを返します。
acctdusg は、その標準入力を (通常は、find / –print から) 読み取り、ログインによるディスクのリソース消費 (間接ブロックを含む) を計算します。
accton では、引数がない場合、プロセスアカウンティングをオフにします。filename を指定する場合は、そのファイルは、カーネルがプロセスのアカウンティングレコード (acct(2) および acct.h(3HEAD) を参照) を追加するための、既存のファイル名である必要があります。
acctwtmp は、utmpx(5) のレコードを filename へ書き込みます。レコードには、現在の時間および reason を説明する文字列が入っています。ACCOUNTING のレコードの型が割り当てられます (utmpx(5) を参照)。reason には、11 文字以下の文字列、数、$、またはスペースを指定してください。たとえば、以下は、リブートのプロシージャおよびシャットダウンのプロシージャでの使用例です。
acctwtmp "acctg on" /var/adm/wtmpx acctwtmp "acctg off" /var/adm/wtmpx
現在ログオンしているユーザーごとに、closewtmp は偽の DEAD_PROCESS レコードを /var/adm/wtmpx ファイルに書き込みます。runacct が呼び出される前にログオンしているユーザーによって使用された時間を接続アカウンティングプロシージャーが追跡できるように、runacct (runacct(8) を参照) は、この偽の DEAD_PROCESS レコードを使用します。
現在ログオンしている各ユーザーについて、runacct は utmp2wtmp を使用して、runacct が作成したファイル /var/adm/wtmpx にエントリを作成します。この /var/adm/wtmpx のエントリを見れば、引き続いて起こる runacct の呼び出しで、現在ログインしているユーザーの接続時間がわかります。
サポートしているオプションは、次のとおりです。
だれにも課金されないファイル名から成るレコードを、filename に入れます (ディスクの課金を拒否しようとしたユーザーを見つけるための潜在的な情報源となる)。
p は、パスワードファイル filename を指定します。パスワードファイルが /etc/passwd である場合は、このオプションは不要です。
LC_* 変数 (LC_TYPE、LC_MESSAGES、LC_TIME、LC_COLLATE、LC_NUMERIC、LC_MONETARY) (environ(7) 参照) のいずれも環境に設定されていなければ、それぞれ対応するロケールのカテゴリにおける acct の動作は、環境変数 LANG によって決定されます。LC_ALL が設定されていれば、その内容が LANG 変数やその他の LC_* 変数より優先されます。前述の変数が環境にまったく設定されていなければ、C ロケール (米国スタイル) が acct の動作を決定します。
acct の文字の処理方法を決定します。LC_CTYPE に有効な値が設定されていると、acct は、そのロケールにあった文字を含むテキストやファイル名を表示および処理できます。acct は拡張 UNIX コード (EUC) も表示および処理できます。この場合、文字は 1 バイト幅、2 バイト幅、3 バイト幅のいずれも使用できます。また、acct は 1、 2、またはそれ以上のカラム幅の EUC 文字も処理することができます。C ロケール においては、ISO 8859-1 の文字だけが有効です。
acct の日付および時間のフォーマットの処理方法を決定します。C ロケールにおいては、日付および時間の処理方法は米国ルールに従います。
ログイン名からユーザー ID への変換に用いる
本マニュアルの 1M 章に含まれるアカウンティングコマンドが置かれる
現在のプロセスアカウンティングファイル
ユーザーアクセスまたは管理情報の履歴
属性についての詳細は、マニュアルページの attributes(7) を参照してください。
|
acctcom(1)、acct(2)、acct.h(3HEAD)、passwd(5)、utmpx(5)、attributes(7)、environ(7)、acctcms(8)、acctcon(8)、acctmerg(8)、acctprc(8)、acctsh(8)、fwtmp(8)、runacct(8)