温馨提示×

Ubuntu syslog怎么关闭

小樊
37
2026-08-27 06:20:01
栏目: 智能运维

在 Ubuntu 里“关闭 syslog”通常指 停止使用 systemd-journald + rsyslog禁止日志写入。下面按常见需求给你几种做法,从“完全关闭”到“只减少日志”。


一、Ubuntu 的日志系统说明(先看这个)

Ubuntu 默认有两套日志:

  1. systemd-journald(systemd 自带的日志)
  2. rsyslog(传统 syslog,Ubuntu 20.04 及以前常见)

从 Ubuntu 22.04 开始,很多系统 默认只用 journald,没有 rsyslog。


二、只关闭 rsyslog(最常见)

1️⃣ 停止并禁用 rsyslog

sudo systemctl stop rsyslog
sudo systemctl disable rsyslog

2️⃣ 确认状态

systemctl status rsyslog

✅ 这样就不会再有 /var/log/syslog/var/log/messages 等文件写入。


三、关闭 systemd-journald(不推荐)

⚠️ 不建议完全关闭,否则 journalctl 无法使用,排错会非常困难。

临时停止(不建议)

sudo systemctl stop systemd-journald

永久禁用(强烈不推荐)

sudo systemctl disable systemd-journald

四、更合理的做法:限制或清空日志(推荐 ✅)

✅ 方法 1:限制 journal 日志大小

编辑:

sudo nano /etc/systemd/journald.conf

修改或添加:

Storage=persistent
SystemMaxUse=50M
RuntimeMaxUse=50M
MaxRetentionSec=1week

然后重启:

sudo systemctl restart systemd-journald

✅ 方法 2:只保留内存日志(不写磁盘)

Storage=volatile

日志只存在内存 /run/log/journal,重启即清空。


✅ 方法 3:清空已有日志

sudo journalctl --vacuum-time=1s
# 或
sudo journalctl --vacuum-size=10M

五、彻底“不记录任何日志”(极端方案)

sudo nano /etc/systemd/journald.conf
Storage=none

然后:

sudo systemctl restart systemd-journald

⚠️ 系统几乎无日志,出问题无法排查。


六、我该选哪种?

需求 建议
不想看到 syslog 文件 禁用 rsyslog
磁盘空间小 限制 journal 大小
临时测试 volatile
生产服务器 ❌ 不建议完全关闭

如果你愿意,可以告诉我:

  • Ubuntu 版本(lsb_release -a
  • 服务器 / 桌面 / Docker / 嵌入式
  • 想关闭的原因是 省磁盘 / 性能 / 审计 / 安全

我可以给你一个最合适、最安全的配置方案

0