2011-03-17 118 views
2

早上好,我几个小时前开始了一个gdb调试会话。有可能使用gdb连接到已被gdb调试的进程?是否可以附加到已经运行的gdb进程?

我试图附加为根,但我得到了以下错误消息:

[[email protected] lirh5g_deb]# gdb ./MatchUpAccurate.exe 12327 
ptrace: Operation not permitted. 
/home/frank/DQT/MatchUpTest/lirh5g_deb/12327: No such file or directory.

我们正在使用Centos Linux Version 5.5。谢谢。

+0

“你已经在运行gdb进程”是什么意思?你想把GDB附加到启动的GDB,调试一些其他进程? – 2011-03-17 13:17:50

+0

我想他意味着他想将gdb附加到已经运行的应用程序(他想调试的应用程序)。 – Sagar 2011-03-17 13:26:43

+0

@Kiril Korov,我用gdb ./MatchUpAccurate.exe命令开始了几个小时的gdb会话。我会附加到这个gdb会话,以便我可以检查MatchUpAccurate.exe的当前状态。谢谢。 – Frank 2011-03-17 13:29:07

回答

4

不幸的是,并非直接。如果你没有使用screen/tmux,你唯一的选择就是搜索一个tty劫持者(可能是“窃取”tty的 - 虽然这是一个丑陋的解决方案),并抓住你现有的gdb会话的tty

+0

谢谢你的回复。我刚接受你的回答。你能帮我找到一个Linux tty劫机者吗?我的谷歌搜索tty劫机者发现了一篇写于1997年的文章,讨论Solaris tty劫持者。然而,它在1997年说,没有Linux tty劫持者。谢谢 – Frank 2011-03-17 13:39:11

+0

@Frank:由于tty劫持者不是一个典型的工具,因此找到一个人的最佳机会是安全相关的网站,例如, http://packetstormsecurity.org - 您正在寻找“文件描述符劫持”或“tty劫持”。 – Erik 2011-03-17 13:46:03

+0

谢谢你的链接。我刚刚下载了fdjack.gz。 – Frank 2011-03-17 14:04:04

相关问题