《NetBSD指南-18.6.2.读取记账信息》
发表于 : 2010-03-05 14:02
要读取记账信息可以使用两个工具:
18.6.2.1. lastcomm
lastcomm命令按顺序显示最后运行的命令。 但是它可以, 通过指定用户来选择, 这里是一些输出的例子:
非常好, lastcomm命令从默认位置 /var/account/acct 获得了它的信息, 但是, 你也可以使用 -f 参数指定(读取)另外一个文件.
很显然, 因为在多用户系统中lastcomm的输出可能会有些大, 这时就正好是 sa 登场的时候了。
18.6.2.2. sa
sa命令(意思是 "打印系统记账统计") 可以被用来维护信息。 它可以用来交互式地产生报告. 下面是 sa 命令的默认输出:
[/code]
$ sa
77 18.62re 0.02cp 8avio 0k
3 4.27re 0.01cp 45avio 0k ispell
2 0.68re 0.00cp 33avio 0k mutt
2 1.09re 0.00cp 23avio 0k vi
10 0.61re 0.00cp 7avio 0k ***other
2 0.01re 0.00cp 29avio 0k exim
4 0.00re 0.00cp 8avio 0k lastcomm
2 0.00re 0.00cp 3avio 0k atrun
3 0.03re 0.00cp 1avio 0k cron*
5 0.02re 0.00cp 10avio 0k exim*
10 3.98re 0.00cp 2avio 0k less
11 0.00re 0.00cp 0avio 0k ls
9 3.95re 0.00cp 12avio 0k man
2 0.00re 0.00cp 4avio 0k sa
12 3.97re 0.00cp 1avio 0k sh
...
sa命令在大系统中的作用尤其明显.
lastcomm命令按顺序显示最后运行的命令。 但是它可以, 通过指定用户来选择, 这里是一些输出的例子:
代码: 全选
$ lastcomm jrf
last - jrf ttyp3 0.00 secs Tue Sep 3 14:39 (0:00:00.02)
man - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:01:49.03)
sh - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:01:49.03)
less - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:01:49.03)
lastcomm - jrf ttyp3 0.02 secs Tue Sep 3 14:38 (0:00:00.02)
stty - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:00:00.02)
tset - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:00:01.05)
hostname - jrf ttyp3 0.00 secs Tue Sep 3 14:38 (0:00:00.02)
ls - jrf ttyp0 0.00 secs Tue Sep 3 14:36 (0:00:00.00)
...
很显然, 因为在多用户系统中lastcomm的输出可能会有些大, 这时就正好是 sa 登场的时候了。
18.6.2.2. sa
sa命令(意思是 "打印系统记账统计") 可以被用来维护信息。 它可以用来交互式地产生报告. 下面是 sa 命令的默认输出:
[/code]
$ sa
77 18.62re 0.02cp 8avio 0k
3 4.27re 0.01cp 45avio 0k ispell
2 0.68re 0.00cp 33avio 0k mutt
2 1.09re 0.00cp 23avio 0k vi
10 0.61re 0.00cp 7avio 0k ***other
2 0.01re 0.00cp 29avio 0k exim
4 0.00re 0.00cp 8avio 0k lastcomm
2 0.00re 0.00cp 3avio 0k atrun
3 0.03re 0.00cp 1avio 0k cron*
5 0.02re 0.00cp 10avio 0k exim*
10 3.98re 0.00cp 2avio 0k less
11 0.00re 0.00cp 0avio 0k ls
9 3.95re 0.00cp 12avio 0k man
2 0.00re 0.00cp 4avio 0k sa
12 3.97re 0.00cp 1avio 0k sh
...
代码: 全选
从左到右, 总调用时间, 以分钟计算的实际上使用时间, 用户和系统时间总和(分钟), 平均每次运行的I/O吞吐量,命令名称.
sa命令也可以用来创建概述文件或者会基于某些选项的报告, 例如这是一个CPU时间的平均内存使用量的例子:
[code]
$ sa -k
86 30.81re 0.02cp 8avio 0k
10 0.61re 0.00cp 7avio 0k ***other
2 0.00re 0.00cp 3avio 0k atrun
3 0.03re 0.00cp 1avio 0k cron*
2 0.01re 0.00cp 29avio 0k exim
5 0.02re 0.00cp 10avio 0k exim*
3 4.27re 0.01cp 45avio 0k ispell
4 0.00re 0.00cp 8avio 0k lastcomm
12 8.04re 0.00cp 2avio 0k less
13 0.00re 0.00cp 0avio 0k ls
11 8.01re 0.00cp 12avio 0k man
2 0.68re 0.00cp 33avio 0k mutt
3 0.00re 0.00cp 4avio 0k sa
14 8.03re 0.00cp 1avio 0k sh
2 1.09re 0.00cp 23avio 0k vi