主要包括三种:
- 内核及系统日志 :主要由 系统服务 rsyslog统一管理,根据服务的主配置文件 /etc/rsyslog.conf 中的设置决定 内核和系统程序消息记录的位置。
- 用户日志 : 记录linux系统中用户的登录和退出等消息:如 用户名、登录的终端、登录时间、使用主机、执行的进程等。
- 程序日志:记录程序运行时发生的消息事件。
Linux操作系统中的日志文件记录了各种系统和应用程序的信息,如以下:
/var/log/messages : 这个文件记录了所有系统级的事件,例如启动,关机,内核错误,网络错误,程序故障,应用程序公共日志等。
/var/log/syslog : 这个文件记录了依赖syslog程序的所有系统日志信息。
/var/log/auth.log : 这个文件记录了所有系统认证和安全相关的事件,例如su,sudo等。
/var/log/kern.log : 这个文件记录了内核相关的信息,例如内核错误、警告、调试信息等。
/var/log/boot.log : 这个文件记录了系统启动时加载的所有服务和模块的信息。
/var/log/dmesg : 这个文件记录了自系统启动时开始的内核环缓冲区缓冲区的信息和错误,引导过程中的事件消息。
/var/log/cron: 记录cron 计划任务产生的事件消息。
/var/log/maillog:记录进入或发出系统的电子邮件活动
/var/log/lastlog:记录每个用户最近的登录事件
/var/log/secure:记录用户认证相关的安全事件信息
/var/log/wtemp: 记录每个用户登录、注销及系统启动和停机事件
/var/log/btmp: 记录失败的、错误的登录尝试及验证事件
除此之外,不同的应用程序也会产生不同类型的日志,例如web服务器Apache的日志文件/var/log/apache2/access.log和/var/log/apache2/error.log,邮件服务器Postfix的日志/var/log/mail.log等。
查看linux 系统内核和系统日志文件一般由 rsyslog 软件包 提供,目录位置 :/etc/rsyslog.conf
grep "/var/log" /etc/rsyslog.conf
--结果
*.info;mail.none;authpriv.none;cron.none /var/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log
--备注
linux 核心的syslog 将信息分为7个等级
7 debug 调试时产生的信息数据
6 info 基本信息说明
5 notice 是正常信息 ,但比info 还要被注意到的信息内容
4 warning 警示信息可能有问题 ,不影响系统运行
3 Error 一些重大的错误信息,如配置文件的某些设置值造成 该服 务无法启动的说明。
2 crit 比error 严重的错误信息,crit 是 临界点 critical的缩写
这个错误已经很严重了
1 alert 警告,已经很有问题的等级,比crit 还严重
0 emerg 指系统几乎要死机,通常只有硬件出问题,导致整个核心 无法顺利运行,才会出现这样的等级的信息。
rsyslog 管理的日志文件
每一行都表示一条日志记录,每行都分为四段 分为
时间标签:日志消息的发出的日期和时间
主机名:生成日志消息的主机名称
子系统名称:发出日志消息的应用程序名称
消息:日志消息中的具体的内容
file 日志名 --查看日志格式,有的日志是二进制的,通过cat这种是看不到的
大多数日志文件可以使用 tail 、more、less、cat 等 文本处理工具查看日志内容; 对于 一些二进制的文件需要使用特定的程序进行查看。
二进制的使用 strings 查看
举例:
[root@test log]# file wtmp
wtmp: data
[root@test log]# cat wtmp
~~~reboot3.10.0-1160.el7.x86_64ˣ"e_-tty1tty1-ۣ"eO-tty1tty1LOGIN-ۣ"eO3~~~runlevel3.10.0-1160.el7.x86_64d"e¤F-tty1tty1root-g"-tty1tty1-Jg"e¾~~~reboot3.10.0-1160.el7.x86_6g"e¼+#tty1tty1#g"eģtty1tty1LOGIN#g"e~~~runlevel3.10.0-1160.el7.x86_64g"e
:tty1tty1:e53~~~runlevel3.10.0-1160.el7.x86_64qiQI:0test:0ݠ,eAA~~~shutdown3.10.0-1160.el7.x86_64nl
~~~reboot3.10.0-1160.el7.x86_64¡,etty1tty15¡,eEtty1tty1LOGIN5¡,eE3~~~runlevel3.10.0-1160.el7.x86_644¡,ety1tty1root?¡,e⓻pts/0ts/0root192.168.80.222K¡,e
(·pts/0³
pts/2ts/2root192.168.80.222&¦,e`݁(Pݫ
pts/2§«,eϗCpts/2ts/2root192.168.80.222,eH(P[root@test log]# XshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshell
bash: XshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshellXshell: 未找到命令...
[root@test log]#
[root@test log]# strings wtmp
reboot
3.10.0-1160.el7.x86_64
tty1
tty1
tty1
tty1LOGIN
runlevel
3.10.0-1160.el7.x86_64
tty1