- 浏览: 427153 次
文章分类
最新评论
-
jiaoronggui:
收藏,最近准备整整这个。
用Cacti监控多个不同端口的memcached -
logo32:
可以用来模拟浏览器的请求,做很多想做的事情
在shell中执行简单javascript -
greatghoul:
果然好用 。
sql中replace的用法 -
greatghoul:
在shell中执行js可以应用到哪些地方?
在shell中执行简单javascript -
logo32:
google code上的一个类似的项目
http://cod ...
在shell中执行简单javascript
如果你进入了这个页面,说明你的Linux磁盘多半已经因为空间不足报警了,而且是/var/account/pacct这个文件导致的var挂载点空间不足。
这个文件的意思:
Linux下有一个记载进程记录的进程psacct,当一个进程终止时,把每个进程向统计文件(pacct或acct)中写一个纪录。进程统计的目的是为系统中的基本服务提供命令使用统计。该文件可以通过数据的工具(sa,ac)进行分析。
解决方法:(注意,只有重启审计进程后空间才会真正被释放)
删除/var/account/下的文件
重启审计进程:/etc/init.d/psacct restart
psacct 工具
内容提要
1.
了解 psacct 软件包的组成
2.
掌握 lastcomm 和 sa 命令使用之前的配置方法
3.
掌握 lastcomm 和 sa 命令的使用
4.
掌握 ac 命令的使用
5.
熟悉日志文件 /var/account/pacct 和 /var/log/wtmp 的
滚动配置
psacct 简介
管理员可以使用 psacct 软件包提供的工具监视所有用户执行的命令,包括 CPU 时间和内存占用,实现进程
记帐功能。
psacct 软件包提供了三个进程活动监视工具 : ac, lastcomm和 sa。
accton 用于打开或关闭进程记帐功能,它是运行 lastcomm 和 sa 命令的前提。 accton 命令是一个开关,
运行一次将打开进程记帐功能,再运行一次将关闭进程记帐功能。为了方便管理员使用, CentOS提供一个
init脚本执行 accton命令,您可以使用如下的命令打开或关闭进程记帐功能。
# service psacct start
# service psacct stop
..为避免进程记帐日志文件过大,通常在使用进程记帐功能时才打开,不用时就将其关闭。
..默认情况下, psacct 服务没有打开。若您想在系统启动时就打开进程记帐功能,请执行如下命令:
chkconfig acct on
lastcomm 和 sa 命令默认从进程记帐文件 /var/account/pacct 中读取数据,此文件为二进程文件。同时系
统提供了 /etc/logrotate.d/psacct 脚本用 cron实现进程记帐文件的滚动。
ac 命令从 /var/log/wtmp 文件中读取数据,此文件也为二进程文件。
lastcomm
lastcomm 命令格式
lastcomm命令用于从 /var/account/pacct 搜索并显示以前执行过的命令信息。
命令格式为:
lastcomm [ Command ] [ Username ] [ Terminal ]
lastcomm 命令显示的列表被限制在以下范围:
.
command 参数指定命令。
.
Username参数指定用户执行的命令。
.
Terminal 参数指定由终端发出的命令。
当三者易发生混淆时,可以使用如下的参数格式:
lastcomm [ --command name ] [ --user name ] [ --tty name ]
默认情况下,各个参数之间是“或”的关系,可以使用 ––strict-match参数实现参数表的精确匹
配,即各个参数之间是“与”的关系。
lastcomm 使用举例
1、显示所有记录在 /var/account/pacct 文件中以前执行过的命令信息
# lastcomm
bash S root tty1 0.03 secs Tue Jan 22 12:17
ls crq pts/0 0.00 secs Tue Jan 22 11:49
ac osmond pts/1 0.00 secs Tue Jan 22 10:59
sh F root pts/0 0.00 secs Tue Jan 22 09:50
crond SF root __ 0.01 secs Tue Jan 22 09:50
sadc S root __ 0.01 secs Tue Jan 22 09:50
………………
2、显示 tty1终端上的 root 用户执行的所有命令的信息
# lastcomm tty1 root --strict-match
bash S root tty1 0.03 secs Tue Jan 22 12:17
clear root tty1 0.00 secs Tue Jan 22 12:17
ls root tty1 0.00 secs Tue Jan 22 12:17
bash F root tty1 0.00 secs Tue Jan 22 12:17
id root tty1 0.00 secs Tue Jan 22 12:17
………………
3、显示 pts/1终端上的 osmond 用户执行的名为 ac 的命令的信息
# lastcomm ac osmond pts/1 --strict-match
ac osmond pts/1 0.00 secs Tue Jan 22 10:59
ac osmond pts/1 0.00 secs Tue Jan 22 09:53
lastcomm 输出字段说明
1.命令名
2.当命令执行时记帐设备收集的标志:
.
S ––命令由超级用户执行
.
F ––命令由 fork产生,但是没有 exec(执行)
.
D ––命令终止并生成一个 core(核心)文件
.
X ––命令被 SIGTERM 信号终止
3.运行进程的用户名
4.运行进程的终端
5.这个进程用的 CPU 时间
6.进程开始的时间
sa
sa 的命令格式及输出
sa命令从 /var/account/pacct 原始记帐数据文件中读取信息并进行信息汇总。
sa 命令的显示结果可以包含以下字段:
1. calls ––命令的调用次数。
2.记帐设备收集的信息:
.
re ––实际使用时间(单位为分钟)。
.
cpu ––通常简写为 cp,表示用户和系统时间之和(单位为分钟)。
.
k ––平均 CPU 时间(单元的大小为 1K)。
.
u ––用户 CPU 时间(单位为分钟)。
.
s ––系统 CPU 时间(单位为分钟)。
3. command ––调用的命令。
不带任何参数的 sa 命令,将显示 calls、re、cpu、k 和 command 字段,以 CPU 字段排序。并将只用过
一次的命令放在 ***other类别中显示。
命令格式如下:
sa [ 参数 ]
常用参数:
.
-a : 显示所有命令的名称(包括那些带有不可打印字符的和只用过一次的命令)。
.
-c : 同时显示百分比字段。
.
-l : 将 CPU 时间字段拆分为系统时间和用户时间两个字段显示。
.
-t : 同时显示实际使用时间与 CPU 总时间之比,即 re/cp。
.
-u : 忽略所有其它参数并显示每个命令执行时的 CPU 时间。
.
-m : 显示每个用户的汇总信息。
.
––sort-real-time : 将输出按实际使用时间进行排序。
.
-b : 将输出按用户和系统时间的总和除以调用次数来进行排序,即 cp/calls。
.
-k : 将输出按平均 CPU 时间进行排序。
.
-n : 将输出按命令的调用次数进行排序。
.
-r : 将输出按逆序排列,可与其他排序参数一起使用。
.
-b、-k、-n 和 –– sort-real-time参数确定如何进行输出排序。
..如果在命令行中指定了不止一个排序参数,则只有最后那个参数生效。
sa 使用举例
1、要对 /var/account/pacct 文件命令进行记帐汇总
# sa
1355 3870.84re 0.79cp 778k # 所有命令的汇总行
2 718.17re 0.67cp 542k top
134 0.05re 0.03cp 421k sadc
169 13.12re 0.02cp 1318k crond*
4 0.23re 0.02cp 1082k find
12 0.71re 0.01cp 636k netstat
………………
1 0.00re 0.00cp 925k ***other
2、改变汇总信息的输出列
# 同时显示百分比字段
# sa -c
1356 100.00% 3870.84re 100.00% 0.79cp 100.00% 777k
2 0.15% 718.17re 18.55% 0.67cp 85.45% 542k top134 9.88% 0.05re 0.00% 0.03cp 3.22% 421k sadc
169 12.46% 13.12re 0.34% 0.02cp 2.95% 1318k crond*
4 0.29% 0.23re 0.01% 0.02cp 2.63% 1082k find
12 0.88% 0.71re 0.02% 0.01cp 0.68% 636k netstat
………………
# 将 CPU 时间字段拆分为系统时间和用户时间两个字段显示
# sa -l
1357 3870.84re 0.19u 0.60s 777k
2 718.17re 0.19u 0.49s 542k top
134 0.05re 0.00u 0.03s 421k sadc
169 13.12re 0.00u 0.02s 1318k crond*
4 0.23re 0.00u 0.02s 1082k find
12 0.71re 0.00u 0.00s 636k netstat
………………
# 同时显示实际使用时间与 CPU 总时间之比
# sa -t
1358 3870.84re 0.79cp 4923.7re/cp 777k
2 718.17re 0.67cp 1069.2re/cp 542k top
134 0.05re 0.03cp 1.8re/cp 421k sadc
169 13.12re 0.02cp 566.3re/cp 1318k crond*
4 0.23re 0.02cp 11.0re/cp 1082k find
12 0.71re 0.01cp 133.3re/cp 636k netstat
………………
3、记帐汇总信息进行排序输出
# 按实际使用时间排序
# sa --sort-real-time
1362 3870.85re 0.79cp 776k
2 2960.04re 0.00cp 507k login
2 718.17re 0.67cp 542k top
4 145.72re 0.00cp 1037k info
170 13.12re 0.02cp 1318k crond*
………………
# 按CPU时间除以调用次数排序
# sa -b
1361 3870.85re 0.79cp 777k
2 718.17re 0.67cp 542k top
4 0.23re 0.02cp 1082k find
2 0.45re 0.00cp 1240k ntsysv
4 0.65re 0.00cp 1142k bash
………………
# 按平均 CPU 时间排序
# sa -k
1363 3870.85re 0.79cp 776k
10 0.02re 0.00cp 2221k rpmq
12 12.28re 0.00cp 2008k sendmail
12 0.01re 0.00cp 1465k troff
170 13.12re 0.02cp 1318k crond*
12 0.01re 0.00cp 1269k grotty
………………
# 按命令的调用次数排序
# sa -n
1364 3870.85re 0.79cp 776k
170 13.12re 0.02cp 1318k crond*
135 0.05re 0.03cp 421k sadc
118 0.37re 0.00cp 414k sa
56 0.00re 0.00cp 855k bash*
48 0.00re 0.00cp 407k runlevel
………………
# 按命令的调用次数排序(逆序)
# sa -nr
1366 3870.85re 0.79cp 775k
1 0.00re 0.00cp 925k ***other
2 0.00re 0.00cp 441k free
2 0.00re 0.00cp 501k gzip
2 0.00re 0.00cp 919k kbd_mode
………………
4、显示包含用户名的进程汇总信息
# 显示每个用户执行的每个命令的信息
# sa -u
root 0.01 cpu 1125k mem psacct
root 0.01 cpu 1112k mem service
osmond 0.01 cpu 932k mem sar
osmond 0.00 cpu 926k mem iostat
osmond 0.00 cpu 927k mem mpstat
osmond 0.00 cpu 441k mem free
osmond 0.00 cpu 439k mem uptime
osmond 0.01 cpu 1047k mem ps
crq 0.00 cpu 518k mem id
crq 0.00 cpu 605k mem bash *
………………
# 显示每个用户执行命令的汇总信息
# sa -m
1369 3870.85re 0.79cp 775k
root 1091 3693.33re 0.77cp 746k
osmond 224 177.00re 0.02cp 928k
crq 54 0.52re 0.00cp 724k
可以通过查看 re, k, cp/cpu 等字段的值找出可疑的活动。例如:
1.某个用户或某个命令占用了所有的 CPU时间
2.如果某个命令的 CPU 时间和内存使用在不断增加,说明命令存在问题
ac
ac 命令及格式
ac 命令从 /var/log/wtmp 文件中的登录和退出时间记录计算并输出用户的连接时间和总计连接时间。
记帐文件 /var/log/wtmp 由 init和 login维护。 ac 和 login均不生成 /var/log/wtmp 文件。若记帐文件
不存在,则不做记帐工作。
请使用 info accounting命令了解 GNU ac 和其他系统上的 ac 在输出上的不同。
文件 /var/log/wtmp 可能很快就变得非常大,所以默认情况下 CentOS在 /etc/logrotate.conf 中 配置了
此文件的日志滚动。配置片段如下:
/var/log/wtmp {
monthly # 指定日志滚动周期为每月
create 0664 root utmp # 使用指定的文件模式创建新的日志文件
}
rotate 1 # 只保留一个滚动日志备份,即只保留 /var/log/wtmp.1
命令格式:
ac [参数]
常用参数:
.
-d : 为每天输出一个总计时间。
.
-p : 为每个用户输出总计时间,并在最后追加一个所有用户的总计时间。
.
-a : 输出每天的记录,而不忽略没有登录活动的日子。
.
-y : 在显示日期时输出年份。
.
-z : 显示值为 0的类别总计(除了全部总计)。默认禁止输出值为 0的总计。
.
userlist : 显示指定用户的连接时间。多个用户之间用空格间隔,不允许有通配符。
ac 命令使用举例
# 显示所有用户的总计登录时间
$ ac
total 66.53
# 显示用户 crq 的总计登录时间
$ ac crq
total 0.04
# 显示用户 crq 和 osmond 的总计登录时间
$ ac crq osmond
total 26.19
# 显示每个用户的总计登录时间
$ ac -p
crq 0.06
osmond 26.15
root 40.38
total 66.58
# 显示指定用户的总计登录时间
$ ac -p crq osmond
crq 0.04
osmond 26.15
total 26.19
# 为每天输出一个所有用户的总计登录时间
$ ac -d
Jan 21 total 30.82
Today total 35.76
# d和 y 参数的结合
$ ac -dyp
osmond 12.95
root 17.87
Jan 21 2008
total 30.82
crq 0.06
osmond 13.20
root 22.51
Today total 35.76
$
为了读取日志文件 /var/log/wtmp,CentOS在 SysVinit 软件包中还提供了 last和 lastb 两个命令。
这个文件的意思:
Linux下有一个记载进程记录的进程psacct,当一个进程终止时,把每个进程向统计文件(pacct或acct)中写一个纪录。进程统计的目的是为系统中的基本服务提供命令使用统计。该文件可以通过数据的工具(sa,ac)进行分析。
解决方法:(注意,只有重启审计进程后空间才会真正被释放)
删除/var/account/下的文件
重启审计进程:/etc/init.d/psacct restart
psacct 工具
内容提要
1.
了解 psacct 软件包的组成
2.
掌握 lastcomm 和 sa 命令使用之前的配置方法
3.
掌握 lastcomm 和 sa 命令的使用
4.
掌握 ac 命令的使用
5.
熟悉日志文件 /var/account/pacct 和 /var/log/wtmp 的
滚动配置
psacct 简介
管理员可以使用 psacct 软件包提供的工具监视所有用户执行的命令,包括 CPU 时间和内存占用,实现进程
记帐功能。
psacct 软件包提供了三个进程活动监视工具 : ac, lastcomm和 sa。
accton 用于打开或关闭进程记帐功能,它是运行 lastcomm 和 sa 命令的前提。 accton 命令是一个开关,
运行一次将打开进程记帐功能,再运行一次将关闭进程记帐功能。为了方便管理员使用, CentOS提供一个
init脚本执行 accton命令,您可以使用如下的命令打开或关闭进程记帐功能。
# service psacct start
# service psacct stop
..为避免进程记帐日志文件过大,通常在使用进程记帐功能时才打开,不用时就将其关闭。
..默认情况下, psacct 服务没有打开。若您想在系统启动时就打开进程记帐功能,请执行如下命令:
chkconfig acct on
lastcomm 和 sa 命令默认从进程记帐文件 /var/account/pacct 中读取数据,此文件为二进程文件。同时系
统提供了 /etc/logrotate.d/psacct 脚本用 cron实现进程记帐文件的滚动。
ac 命令从 /var/log/wtmp 文件中读取数据,此文件也为二进程文件。
lastcomm
lastcomm 命令格式
lastcomm命令用于从 /var/account/pacct 搜索并显示以前执行过的命令信息。
命令格式为:
lastcomm [ Command ] [ Username ] [ Terminal ]
lastcomm 命令显示的列表被限制在以下范围:
.
command 参数指定命令。
.
Username参数指定用户执行的命令。
.
Terminal 参数指定由终端发出的命令。
当三者易发生混淆时,可以使用如下的参数格式:
lastcomm [ --command name ] [ --user name ] [ --tty name ]
默认情况下,各个参数之间是“或”的关系,可以使用 ––strict-match参数实现参数表的精确匹
配,即各个参数之间是“与”的关系。
lastcomm 使用举例
1、显示所有记录在 /var/account/pacct 文件中以前执行过的命令信息
# lastcomm
bash S root tty1 0.03 secs Tue Jan 22 12:17
ls crq pts/0 0.00 secs Tue Jan 22 11:49
ac osmond pts/1 0.00 secs Tue Jan 22 10:59
sh F root pts/0 0.00 secs Tue Jan 22 09:50
crond SF root __ 0.01 secs Tue Jan 22 09:50
sadc S root __ 0.01 secs Tue Jan 22 09:50
………………
2、显示 tty1终端上的 root 用户执行的所有命令的信息
# lastcomm tty1 root --strict-match
bash S root tty1 0.03 secs Tue Jan 22 12:17
clear root tty1 0.00 secs Tue Jan 22 12:17
ls root tty1 0.00 secs Tue Jan 22 12:17
bash F root tty1 0.00 secs Tue Jan 22 12:17
id root tty1 0.00 secs Tue Jan 22 12:17
………………
3、显示 pts/1终端上的 osmond 用户执行的名为 ac 的命令的信息
# lastcomm ac osmond pts/1 --strict-match
ac osmond pts/1 0.00 secs Tue Jan 22 10:59
ac osmond pts/1 0.00 secs Tue Jan 22 09:53
lastcomm 输出字段说明
1.命令名
2.当命令执行时记帐设备收集的标志:
.
S ––命令由超级用户执行
.
F ––命令由 fork产生,但是没有 exec(执行)
.
D ––命令终止并生成一个 core(核心)文件
.
X ––命令被 SIGTERM 信号终止
3.运行进程的用户名
4.运行进程的终端
5.这个进程用的 CPU 时间
6.进程开始的时间
sa
sa 的命令格式及输出
sa命令从 /var/account/pacct 原始记帐数据文件中读取信息并进行信息汇总。
sa 命令的显示结果可以包含以下字段:
1. calls ––命令的调用次数。
2.记帐设备收集的信息:
.
re ––实际使用时间(单位为分钟)。
.
cpu ––通常简写为 cp,表示用户和系统时间之和(单位为分钟)。
.
k ––平均 CPU 时间(单元的大小为 1K)。
.
u ––用户 CPU 时间(单位为分钟)。
.
s ––系统 CPU 时间(单位为分钟)。
3. command ––调用的命令。
不带任何参数的 sa 命令,将显示 calls、re、cpu、k 和 command 字段,以 CPU 字段排序。并将只用过
一次的命令放在 ***other类别中显示。
命令格式如下:
sa [ 参数 ]
常用参数:
.
-a : 显示所有命令的名称(包括那些带有不可打印字符的和只用过一次的命令)。
.
-c : 同时显示百分比字段。
.
-l : 将 CPU 时间字段拆分为系统时间和用户时间两个字段显示。
.
-t : 同时显示实际使用时间与 CPU 总时间之比,即 re/cp。
.
-u : 忽略所有其它参数并显示每个命令执行时的 CPU 时间。
.
-m : 显示每个用户的汇总信息。
.
––sort-real-time : 将输出按实际使用时间进行排序。
.
-b : 将输出按用户和系统时间的总和除以调用次数来进行排序,即 cp/calls。
.
-k : 将输出按平均 CPU 时间进行排序。
.
-n : 将输出按命令的调用次数进行排序。
.
-r : 将输出按逆序排列,可与其他排序参数一起使用。
.
-b、-k、-n 和 –– sort-real-time参数确定如何进行输出排序。
..如果在命令行中指定了不止一个排序参数,则只有最后那个参数生效。
sa 使用举例
1、要对 /var/account/pacct 文件命令进行记帐汇总
# sa
1355 3870.84re 0.79cp 778k # 所有命令的汇总行
2 718.17re 0.67cp 542k top
134 0.05re 0.03cp 421k sadc
169 13.12re 0.02cp 1318k crond*
4 0.23re 0.02cp 1082k find
12 0.71re 0.01cp 636k netstat
………………
1 0.00re 0.00cp 925k ***other
2、改变汇总信息的输出列
# 同时显示百分比字段
# sa -c
1356 100.00% 3870.84re 100.00% 0.79cp 100.00% 777k
2 0.15% 718.17re 18.55% 0.67cp 85.45% 542k top134 9.88% 0.05re 0.00% 0.03cp 3.22% 421k sadc
169 12.46% 13.12re 0.34% 0.02cp 2.95% 1318k crond*
4 0.29% 0.23re 0.01% 0.02cp 2.63% 1082k find
12 0.88% 0.71re 0.02% 0.01cp 0.68% 636k netstat
………………
# 将 CPU 时间字段拆分为系统时间和用户时间两个字段显示
# sa -l
1357 3870.84re 0.19u 0.60s 777k
2 718.17re 0.19u 0.49s 542k top
134 0.05re 0.00u 0.03s 421k sadc
169 13.12re 0.00u 0.02s 1318k crond*
4 0.23re 0.00u 0.02s 1082k find
12 0.71re 0.00u 0.00s 636k netstat
………………
# 同时显示实际使用时间与 CPU 总时间之比
# sa -t
1358 3870.84re 0.79cp 4923.7re/cp 777k
2 718.17re 0.67cp 1069.2re/cp 542k top
134 0.05re 0.03cp 1.8re/cp 421k sadc
169 13.12re 0.02cp 566.3re/cp 1318k crond*
4 0.23re 0.02cp 11.0re/cp 1082k find
12 0.71re 0.01cp 133.3re/cp 636k netstat
………………
3、记帐汇总信息进行排序输出
# 按实际使用时间排序
# sa --sort-real-time
1362 3870.85re 0.79cp 776k
2 2960.04re 0.00cp 507k login
2 718.17re 0.67cp 542k top
4 145.72re 0.00cp 1037k info
170 13.12re 0.02cp 1318k crond*
………………
# 按CPU时间除以调用次数排序
# sa -b
1361 3870.85re 0.79cp 777k
2 718.17re 0.67cp 542k top
4 0.23re 0.02cp 1082k find
2 0.45re 0.00cp 1240k ntsysv
4 0.65re 0.00cp 1142k bash
………………
# 按平均 CPU 时间排序
# sa -k
1363 3870.85re 0.79cp 776k
10 0.02re 0.00cp 2221k rpmq
12 12.28re 0.00cp 2008k sendmail
12 0.01re 0.00cp 1465k troff
170 13.12re 0.02cp 1318k crond*
12 0.01re 0.00cp 1269k grotty
………………
# 按命令的调用次数排序
# sa -n
1364 3870.85re 0.79cp 776k
170 13.12re 0.02cp 1318k crond*
135 0.05re 0.03cp 421k sadc
118 0.37re 0.00cp 414k sa
56 0.00re 0.00cp 855k bash*
48 0.00re 0.00cp 407k runlevel
………………
# 按命令的调用次数排序(逆序)
# sa -nr
1366 3870.85re 0.79cp 775k
1 0.00re 0.00cp 925k ***other
2 0.00re 0.00cp 441k free
2 0.00re 0.00cp 501k gzip
2 0.00re 0.00cp 919k kbd_mode
………………
4、显示包含用户名的进程汇总信息
# 显示每个用户执行的每个命令的信息
# sa -u
root 0.01 cpu 1125k mem psacct
root 0.01 cpu 1112k mem service
osmond 0.01 cpu 932k mem sar
osmond 0.00 cpu 926k mem iostat
osmond 0.00 cpu 927k mem mpstat
osmond 0.00 cpu 441k mem free
osmond 0.00 cpu 439k mem uptime
osmond 0.01 cpu 1047k mem ps
crq 0.00 cpu 518k mem id
crq 0.00 cpu 605k mem bash *
………………
# 显示每个用户执行命令的汇总信息
# sa -m
1369 3870.85re 0.79cp 775k
root 1091 3693.33re 0.77cp 746k
osmond 224 177.00re 0.02cp 928k
crq 54 0.52re 0.00cp 724k
可以通过查看 re, k, cp/cpu 等字段的值找出可疑的活动。例如:
1.某个用户或某个命令占用了所有的 CPU时间
2.如果某个命令的 CPU 时间和内存使用在不断增加,说明命令存在问题
ac
ac 命令及格式
ac 命令从 /var/log/wtmp 文件中的登录和退出时间记录计算并输出用户的连接时间和总计连接时间。
记帐文件 /var/log/wtmp 由 init和 login维护。 ac 和 login均不生成 /var/log/wtmp 文件。若记帐文件
不存在,则不做记帐工作。
请使用 info accounting命令了解 GNU ac 和其他系统上的 ac 在输出上的不同。
文件 /var/log/wtmp 可能很快就变得非常大,所以默认情况下 CentOS在 /etc/logrotate.conf 中 配置了
此文件的日志滚动。配置片段如下:
/var/log/wtmp {
monthly # 指定日志滚动周期为每月
create 0664 root utmp # 使用指定的文件模式创建新的日志文件
}
rotate 1 # 只保留一个滚动日志备份,即只保留 /var/log/wtmp.1
命令格式:
ac [参数]
常用参数:
.
-d : 为每天输出一个总计时间。
.
-p : 为每个用户输出总计时间,并在最后追加一个所有用户的总计时间。
.
-a : 输出每天的记录,而不忽略没有登录活动的日子。
.
-y : 在显示日期时输出年份。
.
-z : 显示值为 0的类别总计(除了全部总计)。默认禁止输出值为 0的总计。
.
userlist : 显示指定用户的连接时间。多个用户之间用空格间隔,不允许有通配符。
ac 命令使用举例
# 显示所有用户的总计登录时间
$ ac
total 66.53
# 显示用户 crq 的总计登录时间
$ ac crq
total 0.04
# 显示用户 crq 和 osmond 的总计登录时间
$ ac crq osmond
total 26.19
# 显示每个用户的总计登录时间
$ ac -p
crq 0.06
osmond 26.15
root 40.38
total 66.58
# 显示指定用户的总计登录时间
$ ac -p crq osmond
crq 0.04
osmond 26.15
total 26.19
# 为每天输出一个所有用户的总计登录时间
$ ac -d
Jan 21 total 30.82
Today total 35.76
# d和 y 参数的结合
$ ac -dyp
osmond 12.95
root 17.87
Jan 21 2008
total 30.82
crq 0.06
osmond 13.20
root 22.51
Today total 35.76
$
为了读取日志文件 /var/log/wtmp,CentOS在 SysVinit 软件包中还提供了 last和 lastb 两个命令。
发表评论
-
linux系统空间不足,不重启进程,清理僵尸文件。
2021-01-14 17:28 554linux系统空间不足,不重启进程,清理僵尸文件。问题:通过 ... -
linux下查看磁盘分区的文件系统格式
2019-10-29 20:27 612df -T 只可以查看已经挂载的分区和文件系统类型。 Fil ... -
SSH登录很慢问题的解决
2019-01-02 11:13 850用ssh连其他linux机器,会等待10-30秒才有提示输入密 ... -
linux快速复制大量小文件方法 nc+tar
2012-06-20 14:45 175481,在需要对大量小文件进行移动或复制时,用cp、mv都会显 ... -
linux下快速删除大量文件
2012-06-20 14:28 14840linux下快速删除大量文 ... -
PostFix postqueue 指令
2012-06-14 09:02 14263看被Queue的信: postqueue -p 强迫Queu ... -
vsftp的虚拟账户方式
2012-05-17 16:11 9893我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录 ... -
linux的strings命令
2012-02-13 11:22 10724linux命令strings strings - ... -
crond进程挂死
2012-01-30 10:15 8989早上发现一些定时任务没有执行,登录服务器看了一下,发现cron ... -
sed删除指定行的上一行
2012-01-18 12:21 14958有这么一个需求,需要从若干个apache虚机配置文件中删除一段 ... -
获取转到后台的shell进程号
2012-01-17 13:22 7601shell转到后台执行可以使用&符号,为方便脚本控制进 ... -
pptpd vpn 记录 用户名
2012-01-16 17:15 5799pptpd的日志主要大部分都在/var/log/message ... -
Linux释放cache内存
2012-01-16 17:06 5404/proc是个虚拟文档系统,我们能够通过对他的读写操作做为和k ... -
linux下的命令行浏览器links
2011-12-30 10:40 16285假如你的linux没有X11,没有ff,最小安装,没有wget ... -
shell中自定义ip2long函数
2011-12-29 10:46 7404关于ip地址的转换,看到CU上一个帖子,自己定义了ip2lon ... -
apache实现手机访问www网站自动跳转到WAP站点
2011-12-23 12:47 10058apache实现手机访问www网站自动跳转到WAP站点 ... -
关于rsync异常重启(xinetd: Activating service rsync)
2011-12-21 13:29 10000一台中控的rsync服务器,经常发现连不上873端口的情况 r ... -
Linux下paste命令,按列合并文件,很实用
2011-12-19 10:44 55211linux下按列合并文件 cut用来从文本文件或标准输出中抽 ... -
linux 共享文件夹 搭建samba服务器
2011-12-16 15:28 9518linux 共享文件夹 搭建samba服务器 1、安装sam ... -
linux strace命令用法
2011-12-15 16:52 7336linux strace命令用法 调用: strace ...
相关推荐
离线安装包,亲测可用
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
对每个想密切监视其服务器/系统上用户活动的Linux/Unix系统管理员来说,psacct或acct是优秀的、必需的应用程序之一。 psacct或acct程序包提供了用于监视进程活动的几项功能。 ac命令输出用户登录/退出(连接时间...
psacct 程序是一款用户对各类系统、设备做安全配置检查的自动化工具,能够智能化识别各类安全设置,分析安全状态,并能够给出多种配置审计分析报告。RedHat Linux 系统中的 psacct 程序能够依照安全需求进行修改。...
离线安装包,亲测可用
离线安装包,亲测可用
psacct,全称为Process Accounting,是Linux系统中的一款安全审计工具,用于记录和分析系统的进程活动。它包含多个子工具,如ac、lastcomm、accton和sa,分别用于不同类型的审计任务: - **ac**:用于显示用户登录...
- **功能描述**:kudzu 是一个硬件自动检测工具,用于检测硬件变动。 - **使用建议**:对于不经常变动硬件的系统,可以关闭 kudzu 以加速启动。 #### lvm2-monitor - **功能描述**:lvm2-monitor 用于监控 LVM2 ...