【发布时间】:2015-03-11 07:28:17
【问题描述】:
我是 strace 的新手,我想 strace 一个分叉的孩子。因为我想以普通用户的身份执行此操作,所以我想通过其 pid 进行 strace 的进程需要是跟踪进程(strace)的子进程,因此我需要分叉两次。在 bash 中:
( ( sleep 1; echo "I'm echoed from a child of strace" )& exec strace -p $! )
#the sleep is for giving strace time to attach itself
这一切都有效,但是我也想跟踪被跟踪进程的子进程,一旦我将 -f 开关添加到 strace,就会出现错误:
( ( sleep 1; echo "I'm echoed from a child of strace" )& exec strace -fp $! )
#=> strace: attach: ptrace(PTRACE_ATTACH, ...): No such process
有什么建议吗?
【问题讨论】: