我正在尝试使用Netbeans调试以另一个用户身份运行的程序。我可以在命令行手动执行此操作,方法是运行sudo gdm,然后附加到pid。
但是,我想利用Netbeans GUI更容易/更快/可视化调试。当我从正在运行的进程列表中选择pid时,我收到错误:
GDB无法附加到流程
当我尝试手动附加时(即通过在命令行运行gdb - 没有sudo),我得到一个'不允许操作',所以我知道Netneans因为允许而无法附加。
有谁知道我如何附加到其他用户运行的进程?
BTW我在家里的开发机器上运行所有这些(Ubuntu),因此安全性不是问题。
答案 0 :(得分:0)
您是否尝试过将netbeans作为目标用户运行?
你可以做“sudo -u username netbeans” 有了这个,你不应该有一个问题附加到过程。如果目标用户在另一台计算机上,我会建议使用X转发ssh(ssh -X user @ machine)。
实际上,如果目标(本地)用户没有设置密码,您可以尝试将gdb命令更改为“sudo -u username gdb”以启动该用户的调试器。