位于/var/log目录下的20个Linux日志文件[译]

from:http://buptguo.com/2014/01/16/linux-var-log-files/

原文地址:20 Linux Log Files that are Located under /var/log Directory

如果你多数时间都在使用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。

  1. /var/log/messages – 包含整个系统的信息,包括系统启动期间被记录的日志。mail, cron, daemon, kern, auth等相关的日志信息在这里记录。
  2. /var/log/dmesg – 包含内核缓冲信息(kernel ring buffer information)。在系统启动时,屏幕上会显示关于内核在启动过程中探测到的硬件设备的信息,这些消息保存再内核缓冲区直到新的消息将它覆盖。使用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 – 内核记录的信息。可以帮助定位定制内核的问题。(注:在ArchLinux中为kernel.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 – 关于更新替代的信息,Ubuntu中,不同的默认命令,会有不同的符号链接到对应的文件(?)On Ubuntu, update-alternatives maintains symbolic links determining default commands.
  13. /var/log/btmp – 包含尝试登陆失败的信息,使用last 命令查看,例如 “last -f /var/log/btmp | more”
  14. /var/log/cups – 所有的打印机和打印相关的
  15. /var/log/anaconda.log – 存储安装相关的信息
  16. /var/log/yum.log – 使用yum安装包时的相关信息
  17. /var/log/cron –  每当cron守护进程(或anacron)开始cron定时操作时,都会将日志信息记录再这里。
  18. /var/log/secure – 包含认证和授权相关的信息。例如sshd登陆记录的所有信息,包括失败的信息。
  19. /var/log/wtmp 或 /var/log/utmp – 包含登陆记录。使用wtmp可以查出都有谁登陆过系统,非ASCII文件。who命令通过这个文件来显示信息。(wtmp 编程)
  20. /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 中可以看到和原文类似的结果。

位于/var/log目录下的20个Linux日志文件的更多相关文章

  1. /var/log目录下的20个Linux日志文件功能详解

    如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. 以下介绍的 ...

  2. /var/log目录下的20个Linux日志文件功能详解 分类: 服务器搭建 linux内核 Raspberry Pi 2015-03-27 19:15 80人阅读 评论(0) 收藏

    如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. 以下介绍的 ...

  3. linux系统/var/log目录下的信息详解

    一./var目录 /var 所有服务的登录的文件或错误信息文件(LOG FILES)都在/var/log下,此外,一些数据库如MySQL则在/var/lib下,还有,用户未读的邮件的默认存放地点为/v ...

  4. /var/log目录下的Linux日志文件功能详解_转

    摘自:http://www.niaoyun.com/help/application/386.html 学习linux应该知道日志文件的所在位置以及它们包含的内容,在系统运行正常的情况下学习了解这些不 ...

  5. 查看 /var/log目录下文件个数 命令tree 、cut

    查看 /var/log目录下文件个数 方法1. [root@oldboy learn_shell]# tree -L 1 /var/log/ |tail -1 5 directories, 42 fi ...

  6. crontab在/var/log/目录下没有cron.log文件

    1.修改rsyslog文件: /etc/rsyslog.d/50-default.conf 将  rsyslog  文件中的  #cron.*  前的  #  删掉: 2.重启rsyslog服务: s ...

  7. Linux日志文件/var/log详解

    更多内容推荐微信公众号,欢迎关注: 如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时 ...

  8. 操作LOG文件-删除log目录下,所有的空文件-删除5天前的文件

    # 1.logs目录下,有一部分文件是空的# 1.删除log目录下,所有的空文件# 2.删除5天前的文件 # 需求分析:# 1.os.walk()获取到所在以.log结尾的文件# 2.判断文件的大小, ...

  9. 定时清除 /var/log/massage 下的信息脚本文件

    定时清除 /var/log/massage 下的信息脚本 #!/bin/sh #Date: 0:07 #Author: Xiaodong #Mail: 990974238@qq.com #Puncti ...

随机推荐

  1. Oracle等待事件之db file scattered read

    1.产生原因 该等待事件通常发生在数据库多块读时,表示发生了与全表扫描和快速索引扫描相关的等待.通常意味着全表扫描过多,或者I/O 能力不足,或者I/O 竞争. 2.确定产生问题对象方法 a)查找全表 ...

  2. sql server 用脚本管理作业

    转自:https://blog.csdn.net/yunye114105/article/details/6594826 摘要: 在SQL SERVER中用脚本管理作业,在绝大部分场景下,脚本都比UI ...

  3. Executor框架与Thread

    Executor将线程的创建和线程的执行解耦,比较下面两个例子: 1:TaskExecutionWebServer.java package chapter06; import java.io.IOE ...

  4. PAT 1046 Shortest Distance[环形][比较]

    1046 Shortest Distance(20 分) The task is really simple: given N exits on a highway which forms a sim ...

  5. PAT 1129 Recommendation System[比较]

    1129 Recommendation System(25 分) Recommendation system predicts the preference that a user would giv ...

  6. mysql主从复制,及扩展

    一.MySQL简单复制相关概念: 1. mysql复制的意义:Mysql复制是使得mysql完成高性能应用的前提 2. mysql复制的机制: SLAVE端线程: IO thread: 向主服务请求二 ...

  7. 7.1 Models -- Introduction

    一.概述 1. 模型是表示应用程序呈现给用户的底层数据的对象.不同的应用程序有不同的模型,这取决于它们正在试图解决什么问题. 2. 例如,一个照片共享应用程序可能有一个Phone模型来代表一个特殊的照 ...

  8. 基于.net core webapi和mongodb的日志系统

    开发环境vs2017,.NET Core2.1, 数据写入到mongodb.思路就是1.提供接口写入日志,2.基于接口封装类库.3.引入类库使用 源码在最后 为什么要写它 很多开源项目像nlog.lo ...

  9. 92. Reverse Linked List II(链表部分反转)

    Reverse a linked list from position m to n. Do it in-place and in one-pass. For example:Given 1-> ...

  10. 六.__FILE__ , __LINE__ 与调试日志

    很多人可能不知道,C\C++编译器提供了一套针对代码文件的宏定义,它们能够帮助开发者更好的定位代码的BUG. __FILE__ 该宏定义是一个字符串,存储着当前代码文件的完整路径 __LINE__ 该 ...