Linux 操作系统日志管理全攻略(2)

   如果指明了用户,那么last只报告该用户的近期活动,例如:last ynguo(回车)显示:
  ynguo pts/4 simba.nic.ustc.e Fri Aug 4 16:50 - 08:20 (15:30)
  ynguo pts/4 simba.nic.ustc.e Thu Aug 3 23:55 - 04:40 (04:44)
  ynguo pts/11 simba.nic.ustc.e Thu Aug 3 20:45 - 22:02 (01:16)
  ynguo pts/0 simba.nic.ustc.e Thu Aug 3 03:17 - 05:42 (02:25)
  ynguo pts/0 simba.nic.ustc.e Wed Aug 2 01:04 - 03:16 1+02:12)
  ynguo pts/0 simba.nic.ustc.e Wed Aug 2 00:43 - 00:54 (00:11)
  ynguo pts/9 simba.nic.ustc.e Thu Aug 1 20:30 - 21:26 (00:55)

  ac:ac命令根据当前的/var/log/wtmp文件中的登录进入和退出来报告用户连结的时间(小时),如果不使用标志,则报告总的时间。例如:ac(回车)显示:total 5177.47
  ac -d(回车)显示每天的总的连结时间
  Aug 12 total 261.87
  Aug 13 total 351.39
  Aug 14 total 396.09
  Aug 15 total 462.63
  Aug 16 total 270.45
  Aug 17 total 104.29
  Today total 179.02
  ac -p (回车)显示每个用户的总的连接时间
  ynguo 193.23
  yucao 3.35
  rong 133.40
  hdai 10.52
  zjzhu 52.87
  zqzhou 13.14
  liangliu 24.34
  total 5178.24
  lastlog:lastlog文件在每次有用户登录时被查询。可以使用lastlog命令来检查某特定用户上次登录的时间,并格式化输出上次登录日志/var/log/lastlog的内容。它根据UID排序显示登录名、端口号(tty)和上次登录时间。如果一个用户从未登录过,lastlog显示"**Never logged**。注意需要以root运行该命令,例如:
  rong 5 202.38.64.187 Fri Aug 18 15:57:01 +0800 2000
  dbb **Never logged in**
  sinchen **Never logged in**
  pb9511 **Never logged in**
  xchen 0 202.38.64.190 Sun Aug 13 10:01:22 +0800 2000

  另外,可一加一些参数,例如,last -u 102将报告UID为102的用户;last -t 7表示限制上一周的报告。

  3. 进程统计

  UNIX可以跟踪每个用户运行的每条命令,如果想知道昨晚弄乱了哪些重要的文件,进程统计子系统可以告诉你。它对还跟踪一个侵入者有帮助。与连接时间日志不同,进程统计子系统缺省不激活,它必须启动。在Linux系统中启动进程统计使用accton命令,必须用root身份来运行。Accton命令的形式accton file,file必须先存在。先使用touch命令来创建pacct文件:touch /var/log/pacct,然后运行accton: accton /var/log/pacct。一旦accton被激活,就可以使用lastcomm命令监测系统中任何时候执行的命令。若要关闭统计,可以使用不带任何参数的accton命令。

  lastcomm命令报告以前执行的文件。不带参数时,lastcomm命令显示当前统计文件生命周期内纪录的所有命令的有关信息。包括命令名、用户、tty、命令花费的CPU时间和一个时间戳。如果系统有许多用户,输入则可能很长。下面的例子:
  crond F root ?? 0.00 scs Sun Aug 20 00:16
  promisc_check.s S root ?? 0.04 scs Sun Aug 20 00:16
  promisc_check root ?? 0.01 scs Sun Aug 20 00:16
  grep root ?? 0.02 scs Sun Aug 20 00:16
  tail root ?? 0.01 scs Sun Aug 20 00:16
  sh root ?? 0.01 scs Sun Aug 20 00:15
  ping S root ?? 0.01 scs Sun Aug 20 00:15
  ping6.pl F root ?? 0.01 scs Sun Aug 20 00:15
  sh root ?? 0.01 scs Sun Aug 20 00:15
  ping S root ?? 0.02 scs Sun Aug 20 00:15
  ping6.pl F root ?? 0.02 scs Sun Aug 20 00:15
  sh root ?? 0.02 scs Sun Aug 20 00:15

  ping S root ?? 0.00 secs Sun Aug 20 00:15
  ping6.pl F root ?? 0.01 secs Sun Aug 20 00:15
  sh root ?? 0.01 secs Sun Aug 20 00:15
  ping S root ?? 0.01 secs Sun Aug 20 00:15
  sh root ?? 0.02 secs Sun Aug 20 00:15
  ping S root ?? 1.34 secs Sun Aug 20 00:15
  locate root ttyp0 1.34 secs Sun Aug 20 00:15
  accton S root ttyp0 0.00 secs Sun Aug 20 00:15

  进程统计的一个问题是pacct文件可能增长的十分迅速。这时需要交互式的或经过cron机制运行sa命令来保持日志数据在系统控制内。sa命令报告、清理并维护进程统计文件。它能把/var/log/pacct中的信息压缩到摘要文件/var/log/savacct和/var/log/usracct中。这些摘要包含按命令名和用户名分类的系统统计数据。sa缺省情况下先读它们,然后读pacct文件,使报告能包含所有的可用信息。sa的输出有下面一些标记项:

  avio--每次执行的平均I/O操作次数
  cp--用户和系统时间总和,以分钟计
  cpu--和cp一样
  k--内核使用的平均CPU时间,以1k为单位 k*sec--CPU存储完整性,以1k-core秒 re--实时时间,以分钟计
  s--系统时间,以分钟计
  tio--I/O操作的总数
  u--用户时间,以分钟计 例如:
  842 173.26re 4.30cp @avio 358k
  2 10.98re 4.06cp @avio 299k find
  9 24.80re 0.05cp @avio 291k ***other
  105 30.44re 0.03cp @avio 302k ping
  104 30.55re 0.03cp @avio 394k sh
  162 0.11re 0.03cp @avio 413k security.sh*
  154 0.03re 0.02cp @avio 273k ls
  56 31.61re 0.02cp @avio 823k ping6.pl*
  2 3.23re 0.02cp @avio 822k ping6.pl
  35 0.02re 0.01cp @avio 257k md5sum
  97 0.02re 0.01cp @avio 263k initlog
  12 0.19re 0.01cp @avio 399k promisc_check.s
  15 0.09re 0.00cp @avio 288k grep
  11 0.08re 0.00cp @avio 332k awk

  用户还可以根据用户而不是命令来提供一个摘要报告。例如sa -m显示如下:
  885 173.28re 4.31cp 0avk
  root 879 173.23re0. 4.31cp 0avk
  alias 3 0.05re 0.00cp 0avk
  qmailp 3 0.01re 0.00cp 0avk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值