zoukankan      html  css  js  c++  java
  • Ubuntu查看和写入系统日志

    一、背景

    Linux将大量事件记录到磁盘上,它们大部分以纯文本形式存储在/var/log目录中。大多数日志条目通过系统日志守护进程syslogd,并被写入系统日志。

    Ubuntu包括以图形方式或从命令行查看这些日志的方法。你也可以将自己的日志消息写入系统日志,在脚本中特别有用。

    二、以图形方式查看日志

    要使用易于使用的图形应用程序查看日志文件,请从Dash打开Log File Viewer应用程序。

    日志文件查看器默认显示多个日志,包括系统日志(syslog),软件包管理器日志(dpkg.log),身份验证日志(auth.log)和图形服务器日志(Xorg.0.log)。你可以在单个窗口中查看所有日志,当添加新的日志事件时,它将自动显示在窗口中,并将加粗。你还可以按Ctrl+F搜索日志消息或使用过滤器菜单过滤日志。

    如果你有其他要查看的日志文件(例如,特定应用程序的日志文件),可以单击“文件”菜单,选择“打开”,然后打开日志文件。它将与列表中的其他日志文件一起显示,并将被监视并自动更新,如其他日志。

    三、写入系统日志

    记录器工具可以让你快速写邮件到你的系统日志与一个单一的、简单的命令。例如,要将消息Hello World写入你的系统日志,请使用以下命令:

    logger “Hello World”

    你可能还需要指定其他信息,例如,如果你在脚本中使用logger命令,则可能需要包含脚本的名称:

    logger –t ScriptName “Hello World”

    四、在终端中查看日志

    dmesg的命令显示Linux内核的消息缓冲器,其被存储在存储器中。运行这个命令,你会得到很多的输出。

    要过滤此输出并搜索你感兴趣的消息,你可以将使用管道grep

    dmesg | grep something

    你还可以将dmesg命令的输出管道用less,这样可以按照你自己的速度滚动浏览消息。要退出less,请按Q

    dmesg | less

    如果一个grep搜索产生大量的结果,你可以将其输出管道用less:

    dmesg | grep something | less

    除了在任何文本编辑器中打开位于/var/log中的日志文件之外,还可以使用cat命令将日志(或任何其他文件)的内容打印到终端:

    cat /var/log/syslog 

    像上面的dmesg命令一样,这将产生大量的输出。你可以使用grepless命令来处理输出:

    grep something /var/log/syslog
    less /var/log/syslog

    其他有用的命令包括命令。头打印文件中的前n行,而尾部打印文件中的最后n行,如果要查看最近的日志消息,则tail命令特别有用。

    head -n 10 /var/log/syslog
    tail -n 10 /var/log/syslog

    某些应用程序可能不会写入系统日志,并且可能会产生自己的日志文件,你可以使用相同的方式进行操作,通常也可以在/var/log目录中找到它们。例如,Apache Web服务器创建一个包含其日志的/var/log/apache2目录。

    五、常用日志目录代表的意思

    => /var/log/messages:常规日志消息
    => /var/log/boot:系统启动日志
    => /var/log/debug:调试日志消息
    => /var/log/auth.log:用户登录和身份验证日志
    => /var/log/daemon.log:运行squid,ntpd等其他日志消息到这个文件
    => /var/log/dmesg:Linux内核环缓存日志
    => /var/log/dpkg.log:所有二进制包日志都包括程序包安装和其他信息
    => /var/log/faillog:用户登录日志文件失败
    => /var/log/kern.log:内核日志文件
    => /var/log/lpr.log:打印机日志文件
    => /var/log/mail.*:所有邮件服务器消息日志文件
    => /var/log/mysql.*:MySQL服务器日志文件
    => /var/log/user.log:所有用户级日志
    => /var/log/xorg.0.log:X.org日志文件
    => /var/log/apache2/*:Apache Web服务器日志文件目录
    => /var/log/lighttpd/*:Lighttpd Web服务器日志文件目录
    => /var/log/fsck/*:fsck命令日志
    => /var/log/apport.log:应用程序崩溃报告/日志文件
    => /var/log/syslog:系统日志
    => /var/log/ufw:ufw防火墙日志
    => /var/log/gufw:gufw防火墙日志
    #使用tail,more,less和grep命令。 tail -f /var/log/apport.log more /var/log/xorg.0.log cat /var/log/mysql.err less /var/log/messages grep -i fail /var/log/boot

      

    参考:

    https://www.howtogeek.com/117878/how-to-view-write-to-system-log-files-on-ubuntu/(上面大部分内容翻译自这篇文章)

    http://blog.csdn.net/nancygreen/article/details/9873895

    http://www.169it.com/article/6268721738005395678.html

    http://www.linuxidc.com/Linux/2015-04/116532.htm

    http://www.jb51.net/LINUXjishu/378593.html

    https://www.cyberciti.biz/faq/ubuntu-linux-gnome-system-log-viewer/(以上日志目录转自此篇文章)

  • 相关阅读:
    android openGl视频
    《jQuery权威指南》学习笔记之第2章 jQuery选择器
    RobHess的SIFT源码分析:综述
    building android/ubuntu-touch on 32bit machine
    Android开发(24)---安卓中实现多线程下载(带进度条和百分比)
    创建Sdcard
    POJ 1033 Defragment
    [C++STDlib基础]关于C标准输入输出的操作——C++标准库头文件<cstdio>
    机器学习实战决策树之眼镜男买眼镜
    protubuffer for windows配置指南!
  • 原文地址:https://www.cnblogs.com/EasonJim/p/7189491.html
Copyright © 2011-2022 走看看