如果你多数时间都在使用Linux系统,那么你有必要知道系统的日志文件位于哪里,以及每个日志文件是关于哪些内容的。在系统正常的时候学习理解各种日志文件的内容,有助于在遇到紧急情况时通过日志文件定位问题所在。

/etc/rsyslog.conf文件决定了哪些内容会被写入到对应的日志文件中,例如,这是/var/log/messages再rsyslog.conf中的相关内容:

1

2

$grep"/var/log/messages"/etc/rsyslog.conf

*.info;mail.none;authpriv.none;cron.none/var/log/messages

上述的输出中:

*.info 表明所有带有 INFO 标志的日志信息会被记录。

mail.none,authpriv.none,cron.none 表明这三种错误信息不会在messages。

你也可以指定 *.none,这样将没有任何日志信息被记录

接下来我们介绍20个位于/var/log目录下的日志文件。一些文件值存在于某些发行版中,例如在Debian系的系统中(如Ubuntu),你可以找到dpkg.log。

/var/log/messages – 包含整个系统的信息,包括系统启动期间被记录的日志。mail, cron, daemon, kern, auth等相关的日志信息在这里记录。

/var/log/dmesg – 包含内核缓冲信息(kernel ring buffer information)。在系统启动时,屏幕上会显示关于内核在启动过程中探测到的硬件设备的信息,这些消息保存再内核缓冲区直到新的消息将它覆盖。使用dmesg命令可以查看该文件中的内容。

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

/var/log/boot.log – 包含系统启动时记录的日志。

/var/log/daemon.log – 包括多种后台守护进程的日志信息。

/var/log/dpkg.log – 包括使用dpkg命令安装或删除包时记录的信息。

/var/log/kern.log – 内核记录的信息。可以帮助定位定制内核的问题。(注:在ArchLinux中为kernel.log)

/var/log/lastlog – 最近所有用户的登陆信息,这不是一个ascii文件,应该使用lastlog命令来查看文件信息。

/var/log/maillog /var/log/mail.log – 包含系统中运行的邮件服务的日志。例如sendmail的日志信息都会在这里被记录。

/var/log/user.log – 包括所有用户等级的日志

/var/log/Xorg.x.log – X系统的日志信息

/var/log/alternatives.log – 关于更新替代的信息,Ubuntu中,不同的默认命令,会有不同的符号链接到对应的文件(?)On Ubuntu, update-alternatives maintains symbolic links determining default commands.

/var/log/btmp – 包含尝试登陆失败的信息,使用last 命令查看,例如 “last -f /var/log/btmp | more”

/var/log/cups – 所有的打印机和打印相关的

/var/log/anaconda.log – 存储安装相关的信息

/var/log/yum.log – 使用yum安装包时的相关信息

/var/log/cron –  每当cron守护进程(或anacron)开始cron定时操作时,都会将日志信息记录再这里。

/var/log/secure – 包含认证和授权相关的信息。例如sshd登陆记录的所有信息,包括失败的信息。

/var/log/wtmp 或 /var/log/utmp – 包含登陆记录。使用wtmp可以查出都有谁登陆过系统,非ASCII文件。who命令通过这个文件来显示信息。(wtmp 编程)

/var/log/faillog – 包含用户的失败登陆尝试,使用faillog命令显示文件内容。非ASCII文件。

除了以上的日志文件,/var/log目录也包含一些子目录,这取决于你系统上运行的应用

/var/log/httpd/ 或 /var/log/apache2 – 包括apache web服务器的access_log 和 error_log信息

/var/log/lighttpd/ – 包含lighthttpd的access_log 和 error_log信息

/var/log/conman/ – ConMan客户端的日志文件。(ConMan是一个console manager,需要有conmand守护进程运行)。

/var/log/mail/ – 包含邮件服务的额外日志。例如,sendmain会收集邮件的统计信息保存在/var/log/mail/statistics文件中

/var/log/prelink/ – 预链接(prelink program)修改(modifies? )已共享的库文件以及已链接的二进制文件来加速启动新的进程。/var/log/prelink/prelink.log 包含被prelink修改过的.so文件的信息。

/var/log/audit/ – 包含 Linux audit daemon (auditd).存储的信息(?)

/var/log/setroubleshoot/ – SELinux使用setroubleshootd (SE Trouble Shoot Daemon) 来通告关于文件的安全上下文问题,这里存储其日志信息。

/var/log/samba/ – Samba的日志信息, Samba用来能使Windows连接到Linux的共享内容

/var/log/sa/ – 包含sysstat软件包收集的每天的sar文件。

/var/log/sssd/ – 系统安全服务守护进程的相关日志。它用来管理远端目录的访问和授权。

除了手工归档日志文件,也可以使用logrotate 工具,每几天或日志文件达到一定大小时自动归档 。使用vi,grep,tail,less来查看日志文件,而不是“cat | more”

PS1:查看系统的日志,就像编程的时候查看debug信息一样,可以更加清楚的了解系统的运行情况。很早就被告知查日志找问题,却从来没有去认真了解过应该去哪里查。今天看到这个文章,干脆就给翻译过来,因为文字水平优先,很多语句可能不如原文好理解,如果不排斥英文原文,可以直接看英文原文。

PS2:日志文件似乎跟发行版等有挺大关系(其实是发行版使用的日志记录软件不同,如rsyslog和syslog-ng),加上原日志是2011年的,所以要具体问题具体分析。比如文章开头的rsyslog.conf,在我的Archlinux中就没有这个文件,在Debian 6 中可以看到和原文类似的结果。

2. linux的日志文件在哪个目录,位于/var/log目录下的20个Linux日志文件相关推荐

  1. 位于/var/log目录下的20个Linux日志文件

    位于/var/log目录下的20个Linux日志文件[译] from:http://buptguo.com/2014/01/16/linux-var-log-files/ 原文地址:20 Linux ...

  2. Linux中log的目录,/var/log目录中Linux日志文件的功能详解

    介绍下/var/log/中日志文件的所在位置以及包含的内容. 了解这些不同的日志文件,有助于在遇到紧急情况时,从容找出问题并加以解决. 这里介绍20个位于/var/log/ 目录之下的日志文件. 其中 ...

  3. /var/log目录中Linux日志文件的功能详解

    介绍下/var/log/中日志文件的所在位置以及包含的内容. 了解这些不同的日志文件,有助于在遇到紧急情况时,从容找出问题并加以解决. 这里介绍20个位于/var/log/ 目录之下的日志文件. 其中 ...

  4. [bash] 打包某目录(可以是绝对路径)下的指定扩展名的文件

    #!/bin/bash # 该脚本用于打包某目录(可以是绝对路径)下的指定扩展名的文件 if [ $# -lt 1 ] || [ "$1" = "." ] || ...

  5. linux var log目录作用,Linux系统/var/log/journal/垃圾日志清理 - 米扑博客

    CentOS系统中有两个日志服务,分别是传统的 rsyslog 和 systemd-journal # ls -l /etc/logrotate.d/ -rw-r--r-- 1 root root 9 ...

  6. linux 的vi命令中将当前文件另存为新文件a.log,【转】20条Linux命令面试问答

    问:1 如何查看当前的Linux服务器的运行级别? 答: 'who -r' 和 'runlevel' 命令可以用来查看当前的Linux服务器的运行级别. 问:2 如何查看Linux的默认网关? 答: ...

  7. linux和android比较大小写,不区分大小写的串比较---Windows下的stricmp和Linux下的strcasecmp, 遇到了, 所以记录一下!...

    不区分大小写的串比较, 在实战中的应用还是很广泛的, 有时候可以增强程序的容错性, 下面我们来分别看看Windows下的stricmp和Linux下的strcasecmp Windows下的stric ...

  8. 尝试为文件附加自动命名的数据库,但失败。已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中...

    1.看看连接字符串中的数据库是否写正确了. 2.把你附加的aspnetdb.mdf文件的权限设置为everyone 我是这样把这个问题解决了的~ 转载于:https://www.cnblogs.com ...

  9. Linux系统/VAR/LOG/各个日志文件分析

    如图所示,Linux系统日志存放在/var/log中.以下介绍的是20个位于/var/log/ 目录之下的日志文件.其中一些只有特定版本采用,如dpkg.log只能在基于Debian的系统中看到. / ...

最新文章

  1. python打不开-python程序无法打开是怎么回事
  2. 用odac连接oracle 12154,OracleConnection 連線出現「ORA-12154: TNS: 無法解析指定的連線 ID」...
  3. Error Based Pruning剪枝算法、代码实现与举例
  4. 26_多线程_第26天(Thread、线程创建、线程池)_讲义
  5. 虚拟机和Docker的最大区别
  6. java 调用一个抛出异常的函数,Java VS C++(14) 调用可能抛出异常的函数
  7. 国产数据库占央采九成份额
  8. Php xml 目录,PHP-PHP+xml的无限分类树目录的方法?
  9. Lua语法基础(1)---简介、基本数据类型、表达式
  10. C# 导出word文档及批量导出word文档(3)
  11. 看到程序员坐在电脑前,如何判断程序员正在做什么?只需看这些
  12. oracle分区存储过程示例,Oracle 存储过程示例
  13. js、jQuery实现自定义弹出框效果
  14. kindle3 破解字体
  15. stm32获取绝对值编码器值(SSI,串行通讯)
  16. Balsamiq Mockups 入门教程
  17. JAVA基础学习(二)
  18. 2021年7月电动汽车保有量,充电站数量
  19. 艾瑞泽5无损换挡机构
  20. intellij背景护眼色调节

热门文章

  1. ActiveMQ:了解内存使用情况
  2. 解决Maven工程install时[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources
  3. CentOS Linux 下的 vim 无法使用系统剪贴板,怎么解决呢?
  4. JavaScript(JS)中与正则表达式有关的方法介绍
  5. ES6 对正则表达式的扩展
  6. HTTP协议简介_请求消息/请求数据包/请求报文_响应消息/响应数据包/响应报文
  7. Mac终端shell类型bash和zsh切换
  8. android 开源 示波器,上个老外的开源虚拟示波器
  9. 添加几个手机联系人_One UI 3.0: 更细腻、更好用,这才是手机系统该有的样子
  10. 计算机兴趣小组意义,信息技术兴趣小组开展之我见