跟踪根进程产生的所有子进程

tracking all child process spawned by a root process

我正在检查某个运行编译器的 make 系统。我想跟踪此类 "root" 进程产生的所有子进程。

我知道有 ps 命令,因为我是 Python 用户,所以有 psutil 包。但是我不确定我是否会错过调用之间的一些短暂过程。

我想我真正想要的是 inotify(或 Python 中的 watchdog),但它不是跟踪目录,而是跟踪所有子进程 activity .

是否有这样的系统调用,或者最好是 Python 的包,可以做到这一点?

提前致谢。

sttace 可以提供该信息。但是您可能必须解析输出以获取您感兴趣的信息。

strace -f -e trace=process <executable>

这将跟踪 <executable> 的所有子进程,并且只会跟踪与进程相关的系统调用(本质上是 waitforkcloneexec ).