『学了就忘』Linux日志管理 — 1.Linux日志简介

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            secure
anaconda.log          ConsoleKit     maillog-20200705   secure-20200705
anaconda.program.log  cron           mcelog             spooler
anaconda.storage.log  cron-20200705  messages           spooler-20200705
anaconda.syslog       cups           messages-20200705  sssd
anaconda.xlog         dmesg          ntpstats           tallylog
anaconda.yum.log      dmesg.old      prelink            wtmp
audit                 dracut.log     sa                 yum.log
boot.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]# lastb
root  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服务来记录和管理的,而是各个服务使用自己的日志管理文档来记录自身日志。

你可能感兴趣的:(『学了就忘』Linux日志管理 — 1.Linux日志简介)