百度
360搜索
搜狗搜索

linux命令与日志详细介绍

在 Linux 系统中,处理日志文件是系统管理和故障排查的重要环节。以下是常用的 Linux 命令及日志相关操作的总结,涵盖日志查看、分析、管理等核心功能:

一、常用日志文件位置

Linux 日志文件通常存储在以下目录(根据系统和服务不同有所差异):

  • 系统日志/var/log/syslog(Debian/Ubuntu)、/var/log/messages(RHEL/CentOS)
  • 认证日志/var/log/auth.log(登录认证信息)
  • 内核日志/var/log/kern.log(内核输出)
  • 服务日志:如/var/log/nginx/(Nginx 日志)、/var/log/httpd/(Apache 日志)、/var/log/syslog-ng/(syslog-ng 服务日志)
  • systemd 日志:通过journalctl命令查看,而非传统文件
  • 用户日志/home/<用户名>/.xsession.log(用户会话日志)

二、基础日志查看命令

1.
查看日志内容

  • cat:一次性显示整个文件(适合小文件)bash
     /var/log/syslog

  • less/more:分页查看,支持搜索(/关键字)和滚动bash
     /var/log/auth.log

  • tail:查看文件尾部内容(默认最后 10 行)
    • 实时监控日志(新增内容自动显示):bash
        /var/log/syslog  

      /var/log/app.log

    • 查看最后 N 行:bash
         /var/log/messages  

2.
过滤日志(关键字搜索)

  • grep:按关键字过滤(支持正则表达式)bash
      /var/log/app.log  

    /var/log/syslog

    access.log

  • egrep:扩展正则表达式(等价于grep -E)bash
      /var/log/messages  

3.
分析日志数据

  • awk:按字段处理日志(日志通常有固定格式)bash

    access.log

  • sed:文本替换或删除(如清理日志中的敏感信息)bash
      old.log  new.log  

    config.log

  • sort/uniq:排序和去重bash
     access.log     

4.
统计日志信息

  • wc:统计行数、单词数、字符数bash
      /var/log/syslog  

    /var/log/app.log

  • du:查看日志文件大小bash
      /var/log/syslog  

    /var/log/

三、systemd 日志(journalctl)

现代 Linux 系统(使用 systemd)通过journalctl管理日志,而非传统文件:

  • 查看所有日志:bash
    journalctl  

    journalctl errcrit

  • 按时间过滤:bash
    journalctl    

    journalctl

  • 按服务过滤:bash
    journalctl  nginx.service  

  • 实时监控:bash
    journalctl   

四、日志管理工具

1.
日志轮转(logrotate)

用于管理日志文件大小,避免占用过多磁盘空间,配置文件在/etc/logrotate.conf/etc/logrotate.d/目录:

  • 手动执行轮转:bash
       /etc/logrotate.conf  

2.
日志服务配置

  • syslog-ng/rsyslog:传统日志服务,配置文件为/etc/syslog-ng/syslog-ng.conf/etc/rsyslog.conf,可定义日志接收、过滤、存储规则。
  • 调整日志级别:修改服务配置(如 Nginx 的log_level)或系统日志服务配置,控制输出日志的详细程度(如debuginfowarnerror)。

五、实战示例

  1. 实时监控并过滤错误日志
    bash
      /var/log/app.log    

  2. 统计今天的访问日志 IP 频率
    bash
      access.log           

  3. 清理超过 7 天的旧日志
    bash
     /var/log/  f    +7    

总结

  • 查看日志cat/less/tail(适合传统文件日志),journalctl(systemd 日志)。
  • 过滤分析grep(关键字)、awk(字段处理)、sed(文本替换)。
  • 管理维护logrotate(轮转)、systemctl(日志服务控制)。
  • 实时监控tail -f(文件)、journalctl -f(systemd)。

根据具体场景选择合适的工具,结合管道(|)和重定向(>, >>)可高效处理日志数据。

阅读更多 >>>  linux如何改变日志存储空间

网站数据信息

"linux命令与日志"浏览人数已经达到19次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux命令与日志的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!