psu*_*usi 9 filesystem command-line kernel
是否有工具可以监控哪些进程打开了系统上的哪些文件,以便您可以跟踪哪个进程不断接触特定文件?
lsof 可以确定您是否在进程打开文件时运行它,但如果它是一个短暂的进程,每隔一段时间运行一次,则无法使用 lsof 捕获它。需要使用内核跟踪的东西。
您也许可以为此使用审计系统。它有点重量级,但应该可以使用(在 /etc/audit/audit.rules 中):
# delete all other rules
-D
# watch the file in question
-w /path/to/file -p rwxa
Run Code Online (Sandbox Code Playgroud)
然后我认为您需要重新启动auditd:
sudo service audit restart
Run Code Online (Sandbox Code Playgroud)
(如果你没有安装它,它在包 auditd 中。)然后可以在 /var/log/audit/audit.log 中找到罪魁祸首。