主题
系统日志管理
日志是系统运行过程中的重要记录,可用于追踪问题、审计安全事件、监控服务状态,是系统运维的重要组成部分。
日志分类
Linux 中的系统日志主要包括:
- 内核日志:记录与硬件、内核相关的消息
- 系统服务日志:如 SSH、cron、网络等服务事件
- 用户行为日志:登录、注销、命令执行等
常见日志文件位置(基于 rsyslog 或 journald)
大多数日志位于 /var/log 目录下:
/var/log/messages:系统通用日志/var/log/syslog:系统服务信息(Debian/Ubuntu)/var/log/auth.log:用户登录与身份验证记录/var/log/cron:定时任务运行记录/var/log/dmesg:开机内核信息/var/log/boot.log:启动日志/var/log/secure:安全事件(如 sudo、SSH)
使用 journalctl 查看日志(基于 systemd)
现代 Linux 系统使用 systemd-journald 管理日志:
查看全部日志:
bashjournalctl
按服务名称过滤:
bashjournalctl -u sshd查看最近日志:
bashjournalctl -xe查看某天日志:
bashjournalctl --since "2025-06-25"
清理与维护日志
使用 logrotate 自动轮转日志
logrotate 是系统中常用的日志维护工具,可自动压缩、删除旧日志:
配置文件位置:
- 主配置:
/etc/logrotate.conf - 其他服务配置目录:
/etc/logrotate.d/
可设置:
- 日志保留天数或数量
- 日志文件大小限制
- 压缩格式与周期(如 daily、weekly)
手动测试轮转:
bash
sudo logrotate -f /etc/logrotate.conf日志管理建议
- 定期检查关键日志(如 auth.log、syslog)以发现异常
- 配置合理的日志轮转,避免磁盘被日志文件占满
- 可使用远程日志服务器集中管理日志(如 rsyslog + Logstash)
系统日志是问题排查与安全分析的第一手资料,掌握日志管理技能有助于快速定位系统故障。
