我试图追踪一些进程的一些奇怪行为,但遇到了一个我不知道如何追踪过去的问题。我附加到使用的挂起进程strace -p显示了这一点:
Process 7926 attached - interrupt to quit
read(3,
Run Code Online (Sandbox Code Playgroud)
好的,所以它正在等待 fd 3 的输入,所以我去检查它是什么:
$ ls -l /proc/7926/fd/3
lr-x------ 1 user grp 64 Mar 15 10:41 /proc/7926/fd/3 -> pipe:[20043922]
Run Code Online (Sandbox Code Playgroud)
好的,所以这是一个烟斗……现在的问题是——这个烟斗的作者是谁?我记得在 Linux 上有一个 unix 域套接字的特殊功能,您可以请求一个以 NUL 字节开头的文件路径来访问“抽象套接字命名空间”(这里提到:http : //tkhanson.net/cgit.cgi /misc.git/plain/unixdomain/Unix_domain_sockets.html)。我不确定我可以利用的管道是否有类似的东西,但我没有找到任何东西。
我希望有一个类似fuser或lsof可能会有所帮助的工具,但我什么也没得到。
有任何想法吗?