使用 gdb 调试运行中的 Python 进程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 gdb 调试运行中的 Python 进程相关的知识,希望对你有一定的参考价值。

本文和大家分享的是使用 gdb 调试运行中的 Python 进程相关内容,一起来看看吧,希望对大家学习python有所帮助。
准备工作
安装 gdb 和 python2.7-dbg:
$ sudo apt-get install gdb python2.7-dbg
设置 /proc/sys/kernel/yama/ptrace_scope:
$ sudo su# echo 0 > /proc/sys/kernel/yama/ptrace_scope
运行 test.py:
python test.py &
[1] 6489
通过 gdb python PID 来调试运行中的进程:
$ gdb python 6489
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
...
For helptype "help".Type "apropos word" to search for commands related to "word"...
Reading symbols from python...Reading symbols from /usr/lib/debug/.build-id/90/d1300febaeb0a626baa2540d19df2416cd3361.debug...done.
done.
...
Reading symbols from /lib/ld-linux.so.2...Reading symbols from /usr/lib/debug//lib/i386-linux-gnu/ld-2.23.so...done.
done.0xb778fc31 in __kernel_vsyscall ()
(gdb)
来源:Huang Huang 的博客

以上是关于使用 gdb 调试运行中的 Python 进程的主要内容,如果未能解决你的问题,请参考以下文章

如何使用WinDbg调试进程信息

使用gdb调试Python进程

gdb调试正在运行的程序

使用GDB调试多进程

在docker中使用gdb调试程序

如何用gdb调试erlang运行期