在 linux 中 关闭 /var/log/messages 和 syslog 的日志写入方法

1、找到 rsyslog 配置文件的路径,默认应该是:/etc/rsyslog.conf

rsyslogd -v

2、注释掉写 messages 和 syslog 的日志文件的规则

如果主配置文件中没有,可以到子配置文件中查找



3、重启 rsyslog 服务,后续就不会再继续写入日志

systemctl restart rsyslog.service 

知识补充

早期 linux 使用 init 作为 PID=1 的进程,也就是启动的第一个用户进程,这个阶段操作系统日志管理是通过 rsyslog 服务实现的,在配置文件中指定规则后,根据规则将日志写入 /var/log/ 下的传统文本日志文件中。

后续 systemd 代替 init 来作为系统 PID=1 的进程后,因 systemd 体系自带了日志管理组件 systemd-journald,其管理的日志是以二进制方式存储日志,需要使用 journalctl 进行查看。

但是为了向后兼容,所以 rsyslog 服务也是被保留了下来,所以现在就存在两类日志:

  • journald 管理的二进制日志:需要专用的工具才能查看
  • rsyslog 管理的文本日志:默认是存储在 /var/log/ 目录下

很多时候会出现 rsyslog 管理的日志文件疯狂写入的情况,一天要写入好几十个G,若此时问题不好排查,就可以先将规则给禁用掉,防止持续的写入导致硬盘撑满。

posted on 2025-12-10 15:12  一直小爪子  阅读(29)  评论(0)    收藏  举报