dwchenxj

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
在非root用户下执行基于Libpcap库编写的应用程序时不能正常运行,原因是由于libpcap库使用raw socket的套接字。
而Raw Socket的使用需要root权限,否则raw socket会创建失败,因此基于raw socket编写的应用程序必须在root具有用户权限才能使用。

为了让基于Raw Socket应用程序在非Root用户下能够执行,在你编译完基于Raw Socket的应用程序之后,执行下面3步:
1. 进入root用户权限,若已经在root用户权限下忽略这一步
    $ su root            # 输入root密码
2. 以root用户权限修改应用程序的所有者(group)属性为root。
    # sodu chown root:root <app-name>
3. 以root用户添加应用程序的stick位,使得非root用户也能以root用户权限运行。
    # sodu chmod u+s <app-name>
posted on 2014-04-10 10:46  dwchenxj  阅读(1272)  评论(0编辑  收藏  举报