日志文件
在Linux系统下,日志默认存放位置目录为:/var/log/
系统日志配置文件:/etc/rsyslog.conf
相关文件关系如下表:
日志文件 | 文件说明 |
---|---|
/var/log/cron | 记录了系统定时任务相关的日志 |
/var/log/cups | 记录打印信息的日志 |
/var/log/dmesg | 记录了系统在开机时内检的信息,也可以使用dmesg命令直接查看内核自检信息 |
/var/log/maillog | 记录邮件信息 |
/var/log/message | 记录系统重要信息的日志。这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件 |
/var/log/btmp | 记录错误登录日志,这个文件是二进制文件,不能直接vim查看,而要使用lastb命令查看 |
/var/log/lastlog | 记录系统中所有用户最后一次登陆时间的日志,这个文件是二进制文件,不能直接vim,而要使用lastlog命令查看 |
/var/log/wtmp | 永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vim,而需要使用last命令来查看 |
/var/run/utmp | 记录当前已经登录的用户信息,这个文件会随着用户的登录和注销不断变化,只记录当前登录用户的信息。同样这个文件不能直接vim,而要使用w,who,users等命令来查询 |
/var/log/secure | 记录验证和授权方面的信息,只要涉及账号和密码的程序都会记录,比如SSH登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中 |
比较重要的几个日志:
登录失败日志:/var/log/btmp,对应命令:lastb
最后一次登录:/var/log/lastlog,对应命令:lastlog
登录成功记录:/var/log/wtmp,对应命令:last
登录日志记录:/var/log/secure
目前登录用户信息:/var/run/utmp,对应命令:w、who、users
grep、awk、sort、uniq等命令
grep
1 | grep参数: |
awk
1 | awk是一种编程语言,用于linux下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其他命令的输出。 |
更多作为脚本来使用。
awk处理数据的方式:
逐行扫描文件,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定动作,则把匹配的行显示到标准输出(屏幕)。如果没有指定模式,则所有被操作所指定的行都被处理。
参数 | 说明 | 备注 |
---|---|---|
-f | 从脚本文件中读取awk命令 | 常用 |
-F | 指定输入文件折分隔符,fs是一个字符串或者是一个正则表达式,如-F: (–field-separator) | 常用 |
-v | 赋值一个用户定义变量 |
sort
1 | 可针对文本文件的内容,以行为单位来排序 |
sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件][-k field1[,field2]]
1 | 参数说明 |
uniq
使用说明:
这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如果输入文件用“- ”表示,则从标准输入读取
1 | -c 显示输出中,在每行行首加上本行在文件中出现的次数。它可取代- u和- d选项。 |