linux收集系统日志命令
linux收集系统日志命令详细介绍
在 Linux 系统中,收集系统日志通常涉及查看、过滤、导出日志文件。以下是常用命令及场景示例:
一、基础日志查看
- 查看完整日志文件(需
root权限)
bash/var/log/syslog/var/log/messages
- 分页查看日志(适合大文件)
bash/var/log/auth.log
二、实时监控日志(动态更新)
bash
/var/log/syslog/var/log/kern.log
三、过滤关键信息
- 按关键字搜索(如查找 "ERROR" 日志)
bash/var/log/app.log/var/log/syslog
- 按时间范围过滤(systemd 系统,如 CentOS 7+)
bashjournalctl - 组合过滤(关键字 + 时间段)
bashjournalctl today
四、导出日志到文件
bash
/var/log/syslog /tmp/syslog_backup.logjournalctl nginx.service nginx.log
五、进阶工具(自动化 / 分析)
- 多文件搜索(递归查找目录下所有日志)
bash/var/log/* - 生成日志报告(统计频率)
bash/var/log/auth.log - 远程收集(需配置)
- 使用
rsync同步日志:bashroot@server:/var/log/ /local/logs/ - 或通过
syslog-ng配置集中日志服务器。
- 使用
六、常见日志文件位置
| 日志文件路径 | 说明 |
|---|---|
/var/log/syslog |
系统通用日志(Ubuntu) |
/var/log/messages |
系统活动日志(RHEL 系) |
/var/log/auth.log |
认证日志(登录、sudo 等) |
/var/log/nginx/access.log |
Web 服务器访问日志 |
/var/log/dpkg.log |
Debian 包管理日志 |
注意事项
- 权限:多数日志需
sudo查看(属主为root:adm)。 - 轮转:日志会按周期压缩(如
/var/log/syslog.1.gz),需用zless查看。 - systemd 系统:优先用
journalctl(统一管理,支持复杂过滤)。
根据具体场景选择命令,例如排查服务故障时,可结合 journalctl -u <服务名> 和关键字搜索。