linux定义系统日志文件,Linux日志系统以及日志文件功能详解

Linux上的日志系统

syslog

syslog-ng: 开源

日志系统:syslog()

A:

B:

D:

syslog服务:

sysload:系统,非内核产生的信息

klogd:内核,专门负责记录内核产生的日志信息

kernel-->物理终端(/dev/console)-->/var/log/dmesg

dmesg命令:

cat /var/log/dmesg 内核产生的引导信息

日志需要滚动(日志切割):

/sbin/init

/var/log/messages:系统标准错误日志信息:非内核产生引导信息:各子系统产生的信息

/var/log/maillog:邮件系统产生的日志信息

/var/log/secure:

syslog:

syslogd

klogd

配置文件:/etc/rsyslog.conf

信息详细程序:日志级别

子系统:facility,设施

/etc/rsyslog.conf配置文件定义格式为: facility.priority        action

facility,可以理解为日志的来源或设备目前常用的facility有以下几种:

auth      # 认证相关的

authpriv   # 权限,授权相关的

cron      # 任务计划相关的

daemon     # 守护进程相关的

kern       # 内核相关的

lpr       # 打印相关的

mail      # 邮件相关的

mark      # 标记相关的

news      # 新闻相关的

security   # 安全相关的,与auth 类似

syslog   # syslog自己的

user     # 用户相关的

uucp     # unix to unix cp 相关的

local0 到 local7 # 用户自定义使用

*        # *表示所有的facility

priority(log level)日志的级别,一般有以下几种级别(从低到高)

debug           # 程序或系统的调试信息

info            # 一般信息

notice          # 不影响正常功能,需要注意的消息

warning/warn      # 可能影响系统功能,需要提醒用户的重要事件

err/error        # 错误信息

crit            # 比较严重的

alert           # 必须马上处理的

emerg/panic       # 会导致系统不可用的

*              # 表示所有的日志级别

none            # 跟* 相反,表示啥也没有

action(动作)日志记录的位置

系统上的绝对路径      # 普通文件 如: /var/log/xxx

|                # 管道  通过管道送给其他的命令处理

终端              # 终端   如:/dev/console

@HOST             # 远程主机 如: @10.0.0.1

用户              # 系统用户 如: root

*                # 登录到系统上的所有用户,一般emerg级别的日志是这样定义的

定义格式例子:

mail.info   /var/log/mail.log # 表示将mail相关的,级别为info及

# info以上级别的信息记录到/var/log/mail.log文件中

auth.=info  @10.0.0.1         # 表示将auth相关的,基本为info的信息记录到10.0.0.1主机上去

# 前提是10.0.0.1要能接收其他主机发来的日志信息

user.!=error                # 表示记录user相关的,不包括error级别的信息

user.!error                 # 与user.error相反

*.info                    # 表示记录所有的日志信息的info级别

mail.*                    # 表示记录mail相关的所有级别的信息

*.*                      # 你懂的.

cron.info;mail.info           # 多个日志来源可以用";" 隔开

cron,mail.info              # 与cron.info;mail.info 是一个意思

mail.*;mail.!=info           # 表示记录mail相关的所有级别的信息,但是不包括info级别的

日志文件功能详解

1./var/log/messages — 包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。

2./var/log/dmesg — 包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。

3./var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。

4./var/log/boot.log — 包含系统启动时的日志。

5./var/log/daemon.log — 包含各种系统后台守护进程日志信息。

6./var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志。

7./var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。

8./var/log/lastlog — 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。

9./var/log/maillog /var/log/mail.log — 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。

10./var/log/user.log — 记录所有等级用户信息的日志。

11./var/log/Xorg.x.log — 来自X的日志信息。

12./var/log/alternatives.log – 更新替代信息都记录在这个文件中。

13./var/log/btmp – 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。

14./var/log/cups — 涉及所有打印信息的日志。

15./var/log/anaconda.log — 在安装Linux时,所有安装信息都储存在这个文件中。

16./var/log/yum.log — 包含使用yum安装的软件包信息。

17./var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。

18./var/log/secure — 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。

19./var/log/wtmp或/var/log/utmp — 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。

20./var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。

除了上述Log文件以外, /var/log还基于系统的具体应用包含以下一些子目录:

/var/log/httpd/或/var/log/apache2 — 包含服务器access_log和error_log信息。

/var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。

/var/log/mail/ –  这个子目录包含邮件服务器的额外日志。

/var/log/prelink/ — 包含.so文件被prelink修改的信息。

/var/log/audit/ — 包含被 Linux audit daemon储存的信息。

/var/log/samba/ – 包含由samba存储的信息。

/var/log/sa/ — 包含每日由sysstat软件包收集的sar文件。

/var/log/sssd/ – 用于守护进程安全服务。

除了手动存档和清除这些日志文件以外,还可以使用logrotate在文件达到一定大小后自动删除。可以尝试用vim,tail,grep和less等命令查看这些日志文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值