libusb-1.0对通用USB设备的写权限

时间:2011-11-22 17:59:30

标签: c linux libusb-1.0

我正在用Anjuta编写一个带有libusb库的小应用程序。

libusb出于某种目的需要写权限。 本主题已经讨论过这个问题:“在Linux上访问USB设备(libusb-1.0)?”。 也许主题解决方案工作正常(我还没有尝试)但我希望我的应用程序可以访问所有USB设备而不是特定的设备。
我试图在libusb-1.0.so文件中设置一个suid位,该文件具有root所有者但libusbopen函数,例如,回答“libusb需要再次对USB设备节点进行写访问”。 我不会以root用户身份构建整个anjuta项目,但到目前为止,这是此libusb-1.0问题的唯一解决方案。

是否有一种解决方案可以获得对通用USB设备(例如热插拔pendrive)的inode的写访问权限而无需修改udev行为?

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方法。也许这不好,但似乎运作良好。 我在 udev 配置目录(020_permissions.rules)中添加了权限规则文件(/etc/udev/rules.d),其中唯一规则是Unix组应拥有所有USB设备节点。

文件内容为:

SUBSYSTEM=="usb", GROUP=="group to belong my user"

如果您有类似的libusb问题,我希望这会对您有所帮助。