有时,我感兴趣的文件会被某个进程修改。我需要找出修改此文件的进程。使用lsof将不起作用,也不会使用kqueue。这在FreeBSD和Linux下是否可行?
答案 0 :(得分:2)
在Linux上,inotify有一个内核补丁。但是,有些人说这很少有用,而且可能存在安全风险。无论如何,这是patch。
除此之外,我不确定是否有任何方法可以通过 inotify 或 dnotify 来获取PID。您可以进一步调查(例如搜索 pid dnotify 或 pid inotify ),但我认为不太可能。
答案 1 :(得分:1)
在FreeBSD上,如果你check its auditing features,也许应该是最好的。
答案 2 :(得分:1)
Linux有一个审计守护程序http://www.cyberciti.biz/tips/linux-audit-files-to-see-who-made-changes-to-a-file.html
答案 3 :(得分:0)
您可以看到哪些进程只是安装并使用lsof(LiSt Open Files)命令打开文件。