use*_*497 12 permissions strace
我跑的时候
strace -f strace /bin/ls
Run Code Online (Sandbox Code Playgroud)
知道它失败的strace工作
ptrace(PTRACE_TRACEME, 0, 0, 0) = -1 EPERM (Operation not permitted)
Run Code Online (Sandbox Code Playgroud)
即使是root帐号.
它有什么解决方案吗?
ken*_*orb 11
strace在Docker容器中运行时,要启用ptrace,请使用SYS_PTRACEparam 运行:
docker run -it --cap-add SYS_PTRACE ubuntu
Run Code Online (Sandbox Code Playgroud)
请参阅:在Docker中运行Strace.
我在最近一篇有关 strace 的博客文章中提到了这一点以及更多有用的提示。
您需要启用对 gdb、strace 和类似工具的支持才能附加到系统上的进程。
您可以通过运行命令来设置设置过程来临时执行此操作:
sudo bash -c 'echo 0 > /proc/sys/kernel/yama/ptrace_scope'
您可以通过修改/etc/sysctl.d/10-ptrace.conf和设置在系统重新引导之间保留该设置kernel.yama.ptrace_scope = 0。
如果您的系统没有/etc/sysctl.d/10-ptrace.conf,可以修改/etc/sysctl.conf和设置kernel.yama.ptrace_scope = 0。
| 归档时间: |
|
| 查看次数: |
2769 次 |
| 最近记录: |