有时,我感兴趣的文件会被某些进程修改。我需要找出哪个进程正在修改这个文件。使用 lsof 不起作用,kqueue 也不起作用。这在 FreeBSD 和 Linux 下可能吗?

有帮助吗?

解决方案

在Linux中,有一个内核补丁左右浮动的 inotify的。然而,有些人说这是很少有用的,它可以是一个安全隐患。在任何情况下,这里的补丁

除此之外,我不知道有什么办法让该PID,无论是与的inotify 的或 dnotify 的。你可以进一步调查(例如搜索的 PID dnotify 的或 PID的inotify 的),但我认为这是不可能的。

其他提示

在FreeBSD下,或许应该是最好的,如果你检查其审计功能

可以查看哪些进程打开的文件只是在安装和使用lsof的(打开文件列表)命令。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top