最近在写个协议分析的东西,用到libpcap包. 程序运行时出现Segmentation fault. 可能代码中有内存访问错误需要调试修改。 当我用gdb调试时又带出个问题: 如何在gdb 调试下以root身份运行待调试程序 ?
Linux中涉及到底层捕获数据包 需要root用户权限,如果不是以root身份运行程序 , 则首先查找网卡的 代码 " device = pcap_lookupdev( ebuf ) " 中的 pcap_lookupdev( char * ) 函数 会返回一个NULL 。
gdb中的help run 命令中也没找到相关的方法。google 了也没找到有用的信息。
哪位知道如何在 gdb 调试中如何以root身份 run 待调试程序 的麻烦告诉小弟一下。


于 2014-01-21 11:23:57发表:
进超级管理员用户,再用sudo gdb不就可以了么?
shiliqiang 于 2010-04-19 11:20:53发表:
笨死了! sudo gdb XXX 就Ok!
问这问题太.....
shiliqiang 于 2010-04-19 11:08:21发表:
我的运行环境: ubuntu. 在shell中以root用户运行时用sudo. 没有安装root-system-bin