gdb 附加权限问题(ptrace_scope 是只读的)

wjp*_*wjp 6 ubuntu permissions gdb docker

使用 gdb 附加到进程时。表明

无法附加到进程。如果您的 uid 与目标进程的 uid 匹配,请检查 /proc/sys/kernel/yama/ptrace_scope 的设置,或以 root 用户身份重试。有关更多详细信息,请参阅 /etc/sysctl.d/10-ptrace.conf
ptrace:不允许操作。

作为 root 我使用echo 0 >/proc/sys/kernel/yama/ptrace_scope; 然后它显示:

bash: /proc/sys/kernel/yama/ptrace_scope: 只读文件系统

我该如何解决这个问题?的内容/etc/sysctl.d/10-ptrace.confkernel.yama.ptrace_scope = 0

uta*_*ngo 5

在 docker 中,您现在可以使用该--privileged选项,请参阅https://docs.docker.com/engine/reference/commandline/exec/

docker exec --privileged -ti <container> bash
Run Code Online (Sandbox Code Playgroud)

在特权模式下,gdb 无需对 ptrace_scope 进行任何修改即可工作。