[toc]
1、日志相关服务
在
CentOS 6.x
中日志服务已经由
rsyslogd
取代了原先的
syslogd
服务。RedHat认为
syslogd
已经不能满足在工作中的需求,
rsyslogd
服务支持的功能更加丰富。
rsyslogd
服务相比
syslogd
服务具有一些新的特点:
- 基于TCP网络协议传输日志信息。
- 更安全的网络传输方式。
- 有日志消息的及时分析框架。
- 后台数据库。
- 配置文件中可以写简单的逻辑判断。
- 与
syslog
配置文件相兼容。
2、系统中常见的日志文件
在Linux系统中,系统日志一般都保存在
/var/log/
目录下。
如下所示:
[root@localhost ~]# ls /var/log/anaconda.ifcfg.log btmp maillog secureanaconda.log ConsoleKit maillog-20200705 secure-20200705anaconda.program.log cron mcelog spooleranaconda.storage.log cron-20200705 messages spooler-20200705anaconda.syslog cups messages-20200705 sssdanaconda.xlog dmesg ntpstats tallyloganaconda.yum.log dmesg.old prelink wtmpaudit dracut.log sa yum.logboot.log lastlog samba
具体介绍一下这上面的主要日志文件:
日志文件 | 说明 |
---|---|
/var/log/cron |
记录了系统定时任务相关的日志。 |
/var/log/cups/ |
记录打印信息的日志。(前提你要有打印机或者打印服务器,一般不用) |
/var/log/dmesg |
记录了系统在开机时内核自检的信息。也可以使用
dmesg 命令直接查看内核自检信息。 |
/var/log/btmp |
记录错误登录的日志。这个文件是二进制文件,不能直接
vim 查看,而要使用 lastb 命令查看。 |
/var/log/lastlog |
记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件,不能直接
vim ,而要使用 lastlog 命令查看。 |
/var/log/mailog |
记录邮件信息。 |
/var/log/message |
记录系统重要信息的日志。这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件。 |
/var/log/secure |
记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录。比如说系统的登录,
ssh 的登录, su 切换用户, sudo 授权,甚至添加用户和修改用户密码都会记录在这个日志文件中。 |
/var/log/wtmp |
永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接
vim ,而需要使用 last 命令来查看。 |
/var/run/utmp |
记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样这个文件不能直接
vim ,而要使用 w , who , users 等命令来查询。 |
说明:不能用
vim
编辑器查看的日志文件示例。
# 有人在6月4日22:38使用root用户,在本地终端1登录错误[root@localhost log]# lastbroot tty1 Tue Jun 4 22:38 - 22:38 (00:00)
为什么有些日志文件不能使用
vim
编辑器查看?
是因为这些日志文件中的内容,记录的是重要系统资源的日志,与系统安全有关,不能让你修改,要确保数据的准确性,只能通关相关命令来查看。
除了系统默认的日志之外,采用RPM方式安装的系统服务也会默认把日志记录在
/var/log/
目录中。
例如:
日志文件 | 说明 |
---|---|
/var/log/httpd/ |
RPM包安装的
apache 服务的默认日志目录。 |
/var/log/mail/ |
RPM包安装的邮件服务的额外日志目录。 |
/var/log/samba/ |
RPM包安装的
samba 服务的日志目录。 |
/var/log/sssd/ |
守护进程安全服务目录。 |
而源码包安装的服务日志是在源码包指定目录中。
不过这些日志不是由
rsyslogd
服务来记录和管理的,而是各个服务使用自己的日志管理文档来记录自身日志。