服务器总是动不动磁盘占用满,总是需要维护,有一部分原因是因为centos这种像linux服务器自动开了日志功能,而日志对于我们普通用户来说大多时候用不到,且很麻烦,那么出于利大于弊的角度考虑,可以关闭
当然,这只是一种造成服务器磁盘占用过大的情况,具体问题具体分析,服务器还是需要经常维护的
系统日志永久关闭教程


先说结论
可以关闭,很多自建业务服务器默认关掉auditd;但有取舍,我分两种方案给你选择:【优化日志(推荐)】 vs 【直接永久关闭】
auditd = Linux内核审计,日志存
/var/log/audit/audit.log
作用:记录文件修改、命令执行、系统调用,入侵排查溯源用;普通业务服务器长期没安全事件,看起来“没用”。
方案一:不关闭服务,限制日志大小(优先推荐,保留审计能力,杜绝磁盘爆满)
不用关停,修改配置自动轮转、限制文件数量,不用手动清理日志
vi /etc/audit/auditd.conf
修改下面参数:
max_log_file = 20 # 单个日志最大20MB
num_logs = 3 # 最多保留3个轮转文件
max_log_file_action = ROTATE
space_left_action = SUSPEND
admin_space_left_action = SUSPEND
disk_full_action = SUSPEND
重载生效:
systemctl restart auditd
# 清理旧大容量日志
rm -rf /var/log/audit/*
方案二:永久关闭 auditd(适合你现在的需求)
⚠️风险提醒:服务器一旦被入侵、文件被篡改,没有审计日志用来追溯操作记录;
如果不涉及等保、合规检测,可以放心关闭。
# 立即停止 + 禁止开机自启(一条命令搞定)
systemctl disable auditd --now
# 验证状态,显示 disabled 成功
systemctl is-enabled auditd
# 清理积压audit日志释放空间
rm -rf /var/log/audit/*
补充关键点
- CentOS7 最小化安装部分版本默认auditd就是关闭,所以你看到有些服务器没有这些日志;
- 关闭auditd不会影响网站、数据库、业务程序正常运行;
- 如果你服务器是云上生产、需要安全审计/过等保:绝对不要关,选方案一限制日志;
- 如果你是自用业务、测试服务器、内网程序服务器:直接关闭完全没问题。
快速建议
自用业务服务器、不需要安全溯源 → 直接执行关闭命令;
正式对外生产服务器 → 只限制日志大小,不要关停。
永久关闭后续
先说你当前这条命令结果解读
systemctl disable auditd --now
✅ disable 成功:开机不会自启(显示 disabled)
❌ --now 实时停止失败
原因:CentOS7 的 auditd.service 内置参数 RefuseManualStop=yes,系统原生禁止 systemctl stop 手动关停,不是你操作错误。
现状:当前auditd进程还在跑,依旧持续写
/var/log/audit/audit.log;重启服务器后auditd不会自动拉起。
方案分两档(按需选择)
方案A(最简单,不用重启内核,临时抑制日志,推荐自用服务器)
先关闭内核审计接收,立刻停止产生新audit日志:
# 临时关闭内核审计(立即生效,重启失效)
auditctl -e 0
清理旧日志:
rm -rf /var/log/audit/*
⚠️短板:服务器重启后 auditctl -e 0 失效,audit又开始生成日志。
方案B(永久彻底关闭,一劳永逸,根治日志狂打)
原理:内核启动参数 audit=0,直接禁用内核审计子系统,不会产生任何audit消息。
- 编辑grub
vi /etc/default/grub找到
GRUB_CMDLINE_LINUX,末尾增加 audit=0
示例:GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet audit=0" - 生成新引导配置(CentOS7标准命令)
grub2-mkconfig -o /boot/grub2/grub.cfg - 重启服务器生效
reboot
重启验证:
# 查看内核参数是否加载成功
cat /proc/cmdline | grep audit=0
# 查看审计状态,会提示不支持审计
auditctl -s
# 查看进程,不存在auditd、kauditd持续写日志
ps -ef | grep audit
备选折中方案(不想彻底关闭,限制日志大小,不用改grub、不用重启)
如果你以后有可能需要安全审计,不建议彻底关掉,只做日志轮转限制:
vi /etc/audit/auditd.conf
修改:
max_log_file = 15
num_logs = 2
max_log_file_action = ROTATE
disk_full_action = SUSPEND
重启auditd(使用service命令绕过systemctl限制)
service auditd restart
重要提醒
- 关闭audit不影响网站、数据库、业务程序运行;
- 不要使用 kill -9 强杀auditd,容易引发内核队列阻塞、系统卡顿;
- 等保、政企合规服务器禁止关闭audit;个人/业务自用机随意。
给你最简建议
只是嫌日志一直占磁盘 → 方案B,grub添加audit=0重启,永久干净。
暂时不想重启机器 → 先用 auditctl -e 0 临时止住日志输出。
