执行 sudo auditctl -D 可清空内核中所有动态添加的临时审计规则,但不影响 /etc/audit/rules.d/ 下的永久规则文件或 auditd 服务运行。

清空所有正在运行的 Audit 审计规则,用 auditctl -D 即可。它会立即删除所有通过 auditctl 动态添加的临时规则,但不会影响永久配置文件。
清空当前运行的所有规则
执行以下命令:
sudo auditctl -D
该操作无提示、无确认、不可回滚,执行后 auditctl -l 将返回空列表。注意:这仅清除“内核中当前生效的临时规则”,不删除任何存放在 /etc/audit/rules.d/ 下的永久规则文件,也不停止 auditd 服务。
永久规则不会被 -D 影响,但需手动清理
若要彻底移除某类永久审计规则,需做两件事:
- 删除对应规则文件,例如:
sudo rm /etc/audit/rules.d/10-critical-files.rules - 重新加载规则集:
sudo augenrules --load
augenrules 会扫描 /etc/audit/rules.d/ 下所有 .rules 文件,合并生成新的 /etc/audit/rules.d/audit.rules 并推送到内核。删掉文件再 reload,才是永久移除。
验证是否清空干净
分三步确认:
- 检查运行时规则:
sudo auditctl -l | wc -l应返回 0 - 检查规则加载状态:
sudo auditctl -s | grep enabled输出应为 enabled 1 - 确认永久规则源:
ls /etc/audit/rules.d/*.rules查看是否还有残留文件
生产环境不建议直接用 -D
在关键系统中,-D 是高风险操作,原因包括:
- 它无法区分哪些是临时加的应急规则、哪些是本该保留的关键监控
- 执行后无日志记录删了什么,事后难以追溯
- 若未及时 reload 基线规则,会出现审计空窗期
稳妥做法是:先导出当前规则留档(sudo auditctl -l > /tmp/audit-rules-before.txt),再执行 -D,最后用 augenrules --load 恢复合规基线。


















