CentOS 里 syslog 报错是一个非常常见但原因很多的问题,需要先看具体报错内容才能精确定位。下面我按最常见原因 + 排查方法给你一个系统性的说明。
CentOS 不同版本用的日志服务不一样:
syslog / rsyslogps aux | grep rsyslog
systemctl status rsyslog
报错示例
Failed to start System Logging Service
rsyslogd: exit on signal 15
原因
排查
systemctl status rsyslog
journalctl -xe
报错示例
rsyslogd: error: syntax error on line 12
rsyslogd: configuration error
检查配置
rsyslogd -N1
✅ 这个命令专门用来检查配置文件语法
常见错误:
;*.info 写错报错示例
rsyslogd: could not open log file '/var/log/xxx.log': Permission denied
原因
解决
ls -l /var/log
restorecon -Rv /var/log
报错示例
No space left on device
rsyslogd: file write error
检查
df -h
du -sh /var/log/*
清理
journalctl --vacuum-size=200M
报错示例
AVC denied rsyslog_t
排查
ausearch -m avc -ts recent
setenforce 0 # 临时关闭测试
如果你配置了:
*.* @@logserver:514
可能问题:
systemctl status rsyslog
rsyslogd -N1
df -h
ls -Z /var/log
journalctl -u rsyslog
你可以直接贴出:
/etc/rsyslog.conf 或 /etc/rsyslog.d/*.conf 相关配置我可以直接帮你改配置、定位根因。