1.常见的Linux操作系统日志目录有如下几个:
1)/var/log/secure:记录登录系统存取数据的文件;
例如pop3,ssh,telnet,ftp等都会记录在此.
2)/ar/log/wtmp:记录登录这的信息记录,被编码过,所以必须以last解析;
3)/var/log/message:jihu所有的开机系统发生的错误都会在此记录;
4)/var/log/boot.log:记录一些开机或者关机启动的一些服务显示的启动或者关闭的信息;
5)/var/log/maillog:记录邮件的存取和往来;
6)/var/log/cron:用来记录crontab这个服务的内容;
7)/var/log/httpd,/var/log/mysqld.log等等文件,记录几个不同的网络服务的记录文件;
8)/var/log/acpid , 表示高级配置和电源管理接口。
9)/var/run/utmp 记录着现在登录的用户;
10)/var/log/lastlog 记录每个用户最后的登录信息;
11)/var/log/btmp 记录错误的登录尝试;
12)/var/log/dmesg内核日志;
13)/var/log/cpus CPU的处理信息;
14)/var/log/syslog 事件记录监控程序日志;
15)/var/log/auth.log 用户认证日志;
16)/var/log/daemon.log 系统进程日志;
17)/var/log/mail.err 邮件错误信息;
18)/var/log/mail.info 邮件信息;
19)/var/log/mail.warn 邮件警告信息;
20)/var/log/daemon.log 系统监控程序产生的信息;
21)/var/log/kern 内核产生的信息;
22)/var/log/lpr 行打印机假脱机系统产生的信息;
如何查看linux系统下的各种日志文件 linux 系统日志的分析大全
2.日志分类:
1. 连接时间的日志
连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这
两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下:
w/who/finger/id/last/lastlog/ac 进行查看
[root@xhot ~]# who
root tty1 2017-10-06 22:56
root pts/0 2017-10-06 22:26 (218.192.87.4)
root pts/1 2017-10-06 23:41 (218.192.87.4)
root pts/3 2017-10-06 23:18 (218.192.87.4)
[root@xhot ~]# w
01:01:02 up 2:36, 4 users, load average: 0.15, 0.03, 0.01
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 22:56 1:20m 0.16s 0.16s -bash
root pts/0 218.192.87.4 22:26 2:05m 0.18s 0.18s -bash
root pts/1 218.192.87.4 23:41 0.00s 0.41s 0.00s w
root pts/3 218.192.87.4 23:18 1:38m 0.03s 0.03s -bash
[root@xhot ~]# ac -p //查看每个用户的连接时间
u51 1.23
u55 0.04
root 95.21 //可以看到root连接时间最长吧
xhot 0.06
user1 3.93
total 100.48
[root@xhot ~]# ac -a //查看所有用户的连接时间
total 100.49
[root@xhot ~]# ac -d //查看用户每天的连接时间
Sep 24 total 0.14
Sep 25 total 14.60
Sep 26 total 13.71
Sep 27 total 21.47
Sep 28 total 11.74
Sep 29 total 6.60
Sep 30 total 8.81
Oct 1 total 9.04
Oct 2 total 0.47 //可以看到我国庆3、4、5号出去玩了
Oct 6 total 8.62
Today total 5.29
其他几个命令不做具体介绍了
2. 进程监控日志
进程统计监控日志在监控用户的操作指令是非常有效的。当服务器最近发现经常
无故关机或者无故被人删除文件等现象时,可以通过使用进程统计日志查看:
[root@xhot ~]# accton /var/account/pacct //开启进程统计日志监控
[root@xhot ~]# lastcomm //查看进程统计日志情况
accton S root pts/1 0.00 secs Thu Oct 7 01:20
accton root pts/1 0.00 secs Thu Oct 7 01:20
ac root pts/1 0.00 secs Thu Oct 7 01:14
ac root pts/1 0.00 secs Thu Oct 7 01:14
free root pts/1 0.00 secs Thu Oct 7 01:10
lastcomm root pts/1 0.00 secs Thu Oct 7 01:09
bash F root pts/1 0.00 secs Thu Oct 7 01:09
lastcomm root pts/1 0.00 secs Thu Oct 7 01:09
ifconfig root pts/1 0.00 secs Thu Oct 7 01:09
lastcomm root pts/1 0.00 secs Thu Oct 7 01:09
lastcomm root pts/1 0.00 secs Thu Oct 7 01:09
lastcomm root pts/1 0.00 secs Thu Oct 7 01:09
accton S root pts/1 0.00 secs Thu Oct 7 01:09
[root@xhot ~]# accton //关闭进程统计日志监控
3. 系统和服务日志
系统日志服务是由一个名为syslog的服务管理的,如一下日志文件都是由syslog日志服务驱动的:
/var/log/lastlog :记录最后一次用户成功登陆的时间、登陆IP等信息
/var/log/messages :记录Linux操作系统常见的系统和服务错误信息
/var/log/secure :Linux系统安全日志,记录用户和工作组变坏情况、用户登陆认证情况
/var/log/btmp :记录Linux登陆失败的用户、时间以及远程IP地址
/var/log/cron :记录crond计划任务服务执行情况
…...
[root@xhot ~]# cat /var/log/lastlog
Lpts/0218.192.87.4
Lpts/1218.192.87.4
Lpts/1218.192.87.4
Lpts/0218.192.87.46
Lpts/0218.192.87.4
…...
Linux日志服务介绍
1. 在Linux系统,大部分日志都是由syslog日志服务驱动和管理的
syslog服务由两个重要的配置文件控制管理,分别是/etc/syslog.conf主配置文件和/etc/sysconfig/syslog辅助
配置文件, /etc/init.d/syslog是启动脚本,这里主讲主配置文件/etc/syslog.conf:
/etc/syslog.conf 语句结构:
[root@xhot ~]# grep -v "#" /etc/syslog.conf //列出非#打头的每一行
*.info;mail.none;authpriv.none;cron.none /var/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
*.emerg *
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log
选择域(消息类型.错误级别) 动作域
2. 消息类型:auth,authpriv,security;cron,daemon,kern,lpr,mail, mark,news,syslog,user,uucp,local0~local7.
错误级别:(8级)debug,info,notice,warning|warn;err|error;crit,alert,emerg|panic
动作域:file,user,console,@remote_ip
举如上的/etc/syslog.conf文件三个例子:
*.info;mail.none;authpriv.none;cron.none /var/log/messages
表示info级别的任何消息都发送到/var/log/messages日志文件,但邮件系统、验证系统
和计划任务的错误级别信息就除外,不发送(none表示禁止)
cron.* /var/log/cron 表示所有级别的cron信息发到/var/log/cron文件
*.emerg * 表示emerg错误级别(危险状态)的所有消息类型发给所有用户
Linux日志服务器配置
此服务器的配置非常简单,只是修改一个文件的一个地方,然后重启服务即可:
[root@xhot ~]# grep -v "#" /etc/sysconfig/syslog
SYSLOGD_OPTIONS="-m 0 -r" //只要在这里添加“-r”就行咯
KLOGD_OPTIONS="-x"
SYSLOG_UMASK=077
[root@xhot ~]# service syslog restart
关闭内核日志记录器: [确定]
关闭系统日志记录器: [确定]
启动系统日志记录器: [确定]
启动内核日志记录器: [确定]
对于发送消息到服务器的OS,只要在写/etc/syslog.conf主配置文件的时候,作用域
为@server-ip就行了,比如针对XXX这台日志服务器,把一台ubuntu系统的所有
info级别的auth信息发给日志服务器,那么对于ubuntu系统的/etc/syslog.conf文件最后一
行添加 auth.info @XXXXX就OK了