在非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>

相关文章:

  • 2022-01-12
  • 2022-12-23
  • 2022-01-01
  • 2021-11-17
  • 2022-12-23
  • 2022-12-23
  • 2022-01-07
  • 2021-06-12
猜你喜欢
  • 2021-06-23
  • 2021-06-08
  • 2022-12-23
  • 2021-09-27
  • 2022-12-23
  • 2022-12-23
  • 2022-01-10
相关资源
相似解决方案