Linux服务器一般都是被放置在机房中自动运行,管理员要了解服务器或是应用程序的运行状态,大都需要通过日志。日志文件用于记录Linux系统中各种运行消息,不同的日志文件记载了不同类型的信息,例如Linux内核消息、用户登录记录、程序错误等。日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日志文件,这样系统一旦出现问题就会有据可查。此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹。
1. 主要日志文件/var/log/messages:记录Linux内核消息及各种应用程序的公共日志信息,包括启动、I/O错误、网络错误、程序故障等。对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息。
/var/log/cron:记录crond计划任务产生的事件信息。
/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。
/var/log/maillog:记录进入或发出系统的电子邮件活动。
/var/log/lastlog:最近几次成功登录事件和最后一次不成功登录事件。
/var/log/rpmpkgs:记录系统中安装的各rpm包列表信息。
/var/log/secure:记录所有与安全相关以及用户登录认证过程中的事件信息。
/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件。
/var/run/utmp:记录当前登录的每个用户的详细信息。
时间标签:消息发出的日期和时间。
主机名:生成消息的计算机的名称。
子系统名称:发出消息的应用程序的名称。
消息:消息的具体内容。
RHEL系统中的内核及系统日志功能主要由rsyslogd服务提供,该服务的配置文件为"/etc/rsyslog.conf"。
rsyslogd服务默认已经安装并自动运行,/etc/rsyslog.conf配置文件则可以对日志进行设置,它可以指定那些信息需要记录,以及记录在哪里。
例:查看/etc/rsyslog.conf配置文件中的主要内容。
authpriv:与用户安全、验证有关的消息;
cron:与计划任务有关的消息;
daemon:与一般服务有关的消息;
kern:来自系统内核的消息;
mail:来自邮件系统的消息;
localN:保留
0 EMERG(紧急):会导致主机系统不可用的情况。
1 ALERT(警告):必须马上采取措施解决的问题。
2 CRIT(严重):比较严重的情况。
3 ERR(错误):运行出现错误。
4 WARNING(提醒):可能影响系统功能,需要提醒用户的重要事件。
5 NOTICE(注意):不会影响正常功能,但是需要注意的事件。
6 INFO(信息):一般信息。
7 DEBUG(调试):程序或系统调试信息等。
/PATH/FILENAME:将消息存储到指定的文件中,文件必须以斜线(/)开头的绝对路径命名;
USERNAME:将消息发送给指定的已经登录的用户;
@HOSTNAME:将消息转发到指定的日志服务器;
*:将消息发送给所有已经登录的用户。