让Raw Socket的应用程序在非root用户下执行
来源:互联网 发布:8684公交软件 编辑:程序博客网 时间:2024/06/18 17:40
在非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>
其中:
<app-name>为你应用程序的名称。
如果应用程序使用到其它动态库文件,那必须把这些动态库文件拷贝到/usr/lib目录中。
最终的结果是使得你的应用程序与/bin/ping程序一样,具有相同的所有权和文件权限设置。
- 让Raw Socket的应用程序在非root用户下执行
- 让Apache在非root用户下运行
- linux(centos)下非root用户执行管理命令
- 在docker容器中使用非root用户执行脚本
- Solaris等操作系统下如何让非root用户启用小于1024号的端口
- 非root用户执行mount命令的方法
- 非root用户执行程序---sudo的使用
- 配置Wireshark在非root用户下运行
- 如何在非root用户下,访问普通的usb设备(Ubuntu14)
- 尝试在非root用户下进行nginx的反向代理-1
- 非root 用户用root权限执行程序的设置方法
- CentOS or Redhat 非root用户利用sudo执行root相关命令的解决方法
- 如何在非root状态下用root身份执行命令
- 在occi开发时,用非root和oracle用户运行应用程序出错 ORA-27121
- linux下root用户以及非root用户忘记密码的解决方案
- 如何让Linux下非root用户程序使用小于1024端口
- MySQL非root用户执行增加用户及用户权限的操作
- liunx下让socket用非阻塞的方式工作
- 为何NPN三极管集电极带载能力比发射极带载能力强
- 黑马程序员_JavaSE基础17 之 集合框架 Vector LinkedList ArrayList HashSet LinkedHasSet TreeSet
- Linux串口编程详解
- 浅析GestureDetector
- 指针的简单应用(二) 之指针与数组
- 让Raw Socket的应用程序在非root用户下执行
- Android MMS模块数据存取 (转)
- VC内联汇编,引用程序中的变量
- 快速获得强大外链的10大方法!
- 数据结构和算法总结
- 指针的简单应用(三) 之指针与数组续
- 配置眼睛保护色
- 单片机基础知识
- fcntl函数