我希望在Linux下监视具有给定PID的任意进程的当前工作目录。
我的想法是在procfs上使用inotify。每个进程在/ proc / PID下都有自己的目录,并且有一个指向实际工作目录的符号链接/ proc / PID / cwd
我希望在此符号链接更改时收到通知,但如果我在符号链接上放置一个监视,它将开始观察符号链接指向的目录。
有什么想法吗?
答案 0 :(得分:0)
The following further bits can be specified in mask when calling
inotify_add_watch(2):
IN_DONT_FOLLOW (since Linux 2.6.15)
Don't dereference pathname if it is a symbolic link.
答案 1 :(得分:0)
我认为你不能。 procfs不是真正的文件系统,只有在您阅读时才会按需生成。
答案 2 :(得分:0)
你也可以使用strace并观察它来进行chdir()系统调用 - 因为这些是改变当前工作目录的唯一方法。
这实际上是一种调试器风格的要求,您将需要使用调试接口来实现它。