LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 605|回复: 3

USB 编程的权限问题

[复制链接]
发表于 2005-1-4 14:58:42 | 显示全部楼层 |阅读模式
我正在尝试使用 libusb-dev 对 USB 口编程。在向 USB 口写内容之前,先要调用 usb_claim_interface 这个函数。最初我用普通用户执行这个程序,结果一直不正常;用 strace 跟踪后发现,这是由于普通用户没有权限向系统声明新的接口。请问如何使普通用户具有这个权限呢?

非常感谢。
发表于 2005-1-4 21:47:36 | 显示全部楼层
对设备操作一般需要root权限。可以试试把文件所有者改为root,然后chmod +s设置文件权限的set _user_ID位,这样普通用户运行时,自然就有root身份了。
不过这会在安全上造成问题。
也可以分成两个程序,一个写成daemon,有root权限,在后台运行。一个写成用户前端,在需要使用时,由前端向daemon提出请求,获得同意后,前端把用户数据提交给daemon,由daemon完成实际的工作。只是这样做涉及进程间通信,工作量要大一些。
发表于 2005-1-4 22:02:51 | 显示全部楼层
也可以把 usb 口这个设备文件加到你的用户组中。再把组成员的权限设一下,应就行了。

PS. 问一个问题,你为 usb 编程需要什么硬件设备吗?什么样的设备学习,测试合适呢。钱最好不太贵。
如向 usb 口发数据 ,能从设备上知道发送成功了。写收数据的代码时,最好能收到数据。
 楼主| 发表于 2005-1-4 23:10:50 | 显示全部楼层
多谢二位。我用的是打印机,原来是用 usbserial 来模拟串口,现在真的要用 USB 口了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表