上一篇
Linux怎么查看日志大小
- Linux
- 2025-06-30
- 6
使用 du -sh /var/log/查看日志目录总大小, ls -lh /var/log/*.log查看单个日志文件大小,常用路径为 /var/log/。
查看单个日志文件大小
ls 命令
最直接的方式,显示文件的详细属性(包括大小):

- -l:以长格式显示
- -h:以人类可读单位(KB/MB/GB)输出
输出示例: -rw-r----- 1 syslog adm 12M Jun 10 09:25 /var/log/syslog
du 命令
统计文件实际占用的磁盘空间(适用于大文件或稀疏文件):

- -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(交互式磁盘分析)
- 安装工具: sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # CentOS/RHEL
- 扫描日志目录: 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 日志(二进制) |
日志管理建议
- 定期清理:
- 使用 logrotate(默认自动运行)分割和压缩旧日志。
- 手动清理:sudo truncate -s 0 /var/log/large.log(清空文件但保留 inode)。
- 监控磁盘空间: df -h /var # 检查 /var 分区使用情况
- 禁用无效日志:
编辑 /etc/rsyslog.conf 或应用配置文件,减少冗余日志输出。
引用说明:
- 本文方法基于 Linux 核心工具(GNU coreutils 和 findutils),遵循 Linux 文件系统标准(FHS)。
- ncdu 工具文档参考:官方 GitHub。
- 操作涉及系统目录时,请使用 sudo 避免权限问题。
通过以上方法,您可快速定位日志大小异常问题,建议结合监控工具(如 Prometheus)实现自动化预警,确保系统稳定运行。
