Linux udev规则似乎不起作用

Jim*_*des 1 linux fedora

我正在编写一个必须在Fedora Core 4上运行的应用程序.该应用程序需要访问没有root权限的USB设备.使用libusb-1.0.8我已经成功编写了应用程序,除了一个问题.如果我没有root权限,则libusb_open将失败并显示-3"Permission Denied".

我已经读过,我可以使用udev规则更改设备的权限.所以我在/etc/udev/rules.d中添加了10-local.rules,其中包含以下行:

BUS=="usb", SYSFS{idVendor}=="040a", SYSFS{idProduct}=="4e00", MODE="0666"
Run Code Online (Sandbox Code Playgroud)

我从udevinfo的输出中复制了上述信息.

即使使用上述规则,设备权限也总是"0644",我无法从用户应用程序打开USB设备.即使重启后也是如此.

有没有人对我可能做错了什么有任何建议?Fedora Core 4是否支持我要做的事情?谢谢

小智 5

脚本运行后, Udev会设置usb权限.重命名规则,使文件名以大于50的数字开头(USB权限在/lib/udev/rules.d/50-udev-default.rules中设置).由于您的脚本名称是10 -...,它首先运行,然后重置权限.将文件名更改为,例如,99-local.rules.然后它将是最后运行的脚本之一,并且不会覆盖任何设置.

资料来源:http://virtuallyhyper.com/2013/02/fixing-android-phone-device-permissions-on-fedora-17/