中国网管论坛's Archiver

风随缘 发表于 2006-12-30 11:50

linux排错技巧之日志详解

当遇到问题束手无策时,怎么办?
查看日志呗,跟windows一样linux也有相应的日志功能,主要日志详情请见如下:
在Linux系统中,有三个主要的日志子系统:
  连接时间日志
      进程统计
  错误日志  
常用的日志文件如下:
  access-log         纪录HTTP/web的传输
  acct/pacct         纪录用户命令
  aculog           纪录MODEM的活动
  btmp            纪录失败的纪录
  lastlog           纪录最近几次成功登录的事件和最后一次不成功的登录
  messages          从syslog中记录信息(有的链接到syslog文件)
  sudolog           纪录使用sudo发出的命令
  sulog           纪录使用su命令的使用
  syslog           从syslog中记录信息(通常链接到messages文件)
  utmp            纪录当前登录的每个用户
  wtmp            一个用户每次登录进入和退出时间的永久纪录
  xferlog           纪录FTP会话

who:who命令查询utmp文件并报告当前登录的每个用户。Who的缺省输出包括用户名、终端类型、登录日期及远程主机。例如:who(回车)显示
  chyang     pts/0 Aug     18 15:06
  ynguo     pts/2 Aug     18 15:32
  ynguo     pts/3 Aug     18 13:55
  lewis     pts/4 Aug     18 13:35
  ynguo     pts/7 Aug     18 14:12
  ylou     pts/8 Aug     18 14:15

w:w命令查询utmp文件并显示当前系统中每个用户和它所运行的进程信息。例如:w(回车)显示:3:36pm up 1 day, 22:34, 6 users, load average: 0.23, 0.29, 0.27。
  USER   TTY    FROM     LOGIN@ IDLE JCPU PCPU  WHAT
  chyang pts/0 202.38.68.242  3:06pm 2:04 0.08s 0.04s -bash
  ynguo pts/2 202.38.79.47   3:32pm 0.00s 0.14s 0.05   w
  lewis pts/3 202.38.64.233  1:55pm 30:39 0.27s 0.22s -bash
  lewis pts/4 202.38.64.233  1:35pm 6.00s 4.03s 0.01s sh /home/users/
  ynguo pts/7 simba.nic.ustc.e 2:12pm 0.00s 0.47s 0.24s telnet mail
  ylou  pts/8 202.38.64.235  2:15pm 1:09m 0.10s 0.04s  -bash

last:last命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户。例如:
  chyang pts/9  202.38.68.242 Tue Aug 1 08:34 - 11:23 (02:49)
  cfan  pts/6  202.38.64.224 Tue Aug 1 08:33 - 08:48 (00:14)
  chyang pts/4  202.38.68.242 Tue Aug 1 08:32 - 12:13 (03:40)
  lewis pts/3  202.38.64.233 Tue Aug 1 08:06 - 11:09 (03:03)
  lewis pts/2  202.38.64.233 Tue Aug 1 07:56 - 11:09 (03:12)

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**
  xinchen                         **Never logged in**
  pb9511                         **Never logged in**
  xchen     0   202.38.64.190         Sun Aug 13 10:01:22 +0800 2000

iamshiyu 发表于 2006-12-30 13:21

好东西……lastlog这些东西从来没用过呢

b2hzj 发表于 2007-1-3 10:25

不少陌生的~~~

mychina 发表于 2007-2-26 12:51

学习下

vipmax 发表于 2007-2-26 18:20

这个值得好好学习一下!谢谢楼主分享!

页: [1]

Powered by Discuz! Archiver 6.1.0  © 1999-2008 bbs.bitsCN.com