CentOS服务器日志管理可通过以下方式实现:
tail -f /var/log/messages(系统通用日志)journalctl -u nginx(查看Nginx服务日志)journalctl | grep "error" 或 grep "关键字" /var/log/securelogrotate 自动切割、压缩旧日志,配置文件位于 /etc/logrotate.conf 和 /etc/logrotate.d/。
/var/log/nginx/*.log {
daily rotate 7 compress missingok dateext
postrotate kill -USR1 `cat /run/nginx.pid`
}
logrotate -f /etc/logrotate.conf 强制执行轮转。awk 统计日志行数,sort/uniq 去重统计。rsyslog 将日志发送至远程服务器(如 /etc/rsyslog.conf 中添加 *.* @远程IP:514)。auditd 记录安全事件(如登录、文件访问),配置文件 /etc/audit/audit.rules。| 场景 | 命令/工具 | 说明 |
|---|---|---|
| 查看实时日志 | tail -f /var/log/xxx.log |
动态查看日志末尾内容 |
| 查看服务日志 | journalctl -u 服务名 |
管理systemd服务日志 |
| 日志轮转配置 | logrotate -d 配置文件 |
测试轮转规则(不实际执行) |
| 清理旧日志 | journalctl --vacuum-time=1w |
删除1周前的日志 |
以上操作需根据实际需求调整,部分命令需sudo权限。参考来源: