在 CentOS 系统中,readdir
是一个用于读取目录内容的系统调用。要记录 readdir
的日志,您可以使用 Linux 的审计子系统(auditd)来实现。以下是开启 readdir
日志记录功能的步骤:
- 首先,确保已经安装了 auditd 服务。如果没有,请使用以下命令安装:
sudo yum install audit
- 启动 auditd 服务并设置开机启动:
sudo systemctl start auditd sudo systemctl enable auditd
- 创建一个新的审计规则文件,例如
/etc/audit/rules.d/readdir.rules
,并添加以下内容:
-a exit,always -F arch=b64 -S readdir -k readdir_audit -a exit,always -F arch=b32 -S readdir -k readdir_audit
这里,-a exit,always
表示在系统调用退出时总是应用规则;-F arch=b64
和 -F arch=b32
分别表示针对 64 位和 32 位架构的系统;-S readdir
表示要监控的 syscall 是 readdir
;-k readdir_audit
是为这个规则定义的关键字,方便以后查询和过滤日志。
- 重新加载 auditd 配置以应用新的规则:
sudo augenrules --load
- 现在,每当有进程执行
readdir
系统调用时,相关信息都会被记录到审计日志中。您可以使用以下命令查看与readdir_audit
关键字相关的日志:
sudo ausearch -k readdir_audit
如果您想查看更详细的信息,可以添加 -i
选项:
sudo ausearch -k readdir_audit -i
请注意,启用详细的日志记录可能会对系统性能产生影响。在生产环境中,请根据实际需求调整审计规则的详细程度。