当前位置:首页 > Linux > 正文

Linux怎么查看日志大小

使用 du -sh /var/log/查看日志目录总大小, ls -lh /var/log/*.log查看单个日志文件大小,常用路径为 /var/log/

查看单个日志文件大小

ls 命令

最直接的方式,显示文件的详细属性(包括大小):

ls -lh /var/log/syslog
  • -l:以长格式显示
  • -h:以人类可读单位(KB/MB/GB)输出
    输出示例

    Linux怎么查看日志大小  第1张

    -rw-r----- 1 syslog adm 12M Jun 10 09:25 /var/log/syslog

du 命令

统计文件实际占用的磁盘空间(适用于大文件或稀疏文件):

du -sh /var/log/kern.log
  • -s:仅显示总大小
  • -h:人类可读格式

查看日志目录整体大小

统计 /var/log 目录

du -sh /var/log

输出示例

2G /var/log

查看目录内各文件/子目录大小

按层级排序,快速定位大文件:

du -h --max-depth=1 /var/log | sort -h
  • --max-depth=1:只显示第一级子目录
  • sort -h:按人类可读单位排序

按条件筛选日志文件

查找超过 100MB 的日志

find /var/log -type f -name "*.log" -size +100M -exec ls -lh {} ;
  • -size +100M:筛选大于 100MB 的文件
  • -exec ls -lh {} ;:对结果执行 ls 命令

按修改时间查看

find /var/log -mtime +30 -exec du -sh {} ; | sort -h
  • -mtime +30:查找 30 天前修改的文件

高级工具:ncdu(交互式磁盘分析)

  1. 安装工具:
    sudo apt install ncdu  # Debian/Ubuntu
    sudo yum install ncdu  # CentOS/RHEL
  2. 扫描日志目录:
    sudo ncdu /var/log
    • Enter 进入子目录
    • d 删除文件(需谨慎)
    • q 退出

关键日志文件路径

日志文件 作用
/var/log/syslog 通用系统日志
/var/log/auth.log 用户认证日志
/var/log/kern.log 内核相关日志
/var/log/nginx/ Nginx 服务日志目录
/var/log/journal/ Systemd 日志(二进制)

日志管理建议

  1. 定期清理
    • 使用 logrotate(默认自动运行)分割和压缩旧日志。
    • 手动清理:sudo truncate -s 0 /var/log/large.log(清空文件但保留 inode)。
  2. 监控磁盘空间
    df -h /var  # 检查 /var 分区使用情况
  3. 禁用无效日志
    编辑 /etc/rsyslog.conf 或应用配置文件,减少冗余日志输出。

引用说明

  • 本文方法基于 Linux 核心工具(GNU coreutils 和 findutils),遵循 Linux 文件系统标准(FHS)。
  • ncdu 工具文档参考:官方 GitHub。
  • 操作涉及系统目录时,请使用 sudo 避免权限问题。

通过以上方法,您可快速定位日志大小异常问题,建议结合监控工具(如 Prometheus)实现自动化预警,确保系统稳定运行。

0