dtruss 在 OS X 10.11 上的 ps 上失败

2024-01-21

我想看看是哪个系统调用ps用于获取 OS X 10.11 (El Capitan) 上进程的命令行,并遇到以下错误:

# dtruss ps -p 43520 -o args

dtrace: failed to execute ps: dtrace cannot control executables signed with restricted entitlements

谷歌搜索的结果是建议复制ps可以让我绕过这个,但这对我不起作用。为什么我不能跑dtruss不再使用任意二进制文件,我有什么办法可以恢复旧的行为吗?


该问题与代码签名有关。如果您制作一份副本,然后使用您自己的身份(或者可能是任何非 Apple 身份)重新签名,那么dtrace会很好地附着在它上面。

$ mkdir ~/temp
$ cp /bin/ps ~/temp/
$ codesign -f -s `whoami` ~/temp/ps
$ sudo dtruss ~/temp/ps -p 43520 -o args
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dtruss 在 OS X 10.11 上的 ps 上失败 的相关文章

随机推荐