温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

为什么Syslog不写盘了

发布时间:2026-09-30 06:23:10 来源:亿速云 阅读:103 作者:小樊 栏目:系统运维

Syslog“不写盘了”通常不是单一原因,常见排查方向如下(按出现频率排序):

1. 磁盘满了 / inode 用尽

  • df -h 看磁盘空间
  • df -i 看 inode 是否 100%
  • 若 /var/log 所在分区满,rsyslog/syslog-ng 会停止写盘或丢弃日志

现象:服务还在跑,但日志文件不增长。


2. 日志轮转(logrotate)把文件 rename 了

  • logrotate 把 /var/log/messages 重命名为 messages-20260121
  • 但 syslog 仍持有旧文件描述符
  • 看起来“不写盘”,实际写到了被改名后的文件里

验证:

lsof | grep syslog

若指向 messages-20260121,需要:

systemctl restart rsyslog
# 或
kill -HUP $(pidof rsyslogd)

3. rsyslog / syslog-ng 服务挂了

systemctl status rsyslog
journalctl -u rsyslog
  • OOM 被杀
  • 配置错误导致启动失败
  • 容器/宿主机重启后未拉起

4. 配置被改,日志目标变了

检查:

  • /etc/rsyslog.conf
  • /etc/rsyslog.d/*.conf

常见错误:

  • *.info;mail.none 写错
  • 把 /var/log/messages 改成远程 @logserver
  • Stop 规则太早中断

5. 写入权限问题

  • /var/log 权限被改
  • SELinux / AppArmor 拦截
ls -l /var/log
ausearch -m AVC -ts recent

6. 异步写 + 缓冲未刷

  • 使用 imfile / 队列
  • 系统未崩溃但缓冲没落盘
  • 重启服务后“突然有日志了”

7. 容器 / 云环境

  • 日志实际写到 stdout
  • 宿主机 syslog 没接
  • 被 docker journald 接管

快速自检清单

df -h
df -i
systemctl status rsyslog
lsof | grep rsyslog
tail -f /var/log/messages

如果你能贴:

  • 系统(CentOS / Ubuntu / 容器?)
  • 用的 syslog(rsyslog / syslog-ng)
  • df -h 和 systemctl status 输出

我可以直接帮你定位是哪一类。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手