fedora 非root用户访问socket 没用权限

时间:2023-03-09 03:01:51
fedora 非root用户访问socket 没用权限
在非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>