【问题标题】:Fedora 20 udev rule for hidraw not workingFedora 20 udev 的 hidraw 规则不起作用
【发布时间】:2014-09-17 11:12:30
【问题描述】:

我有一个在 Ubuntu (14.04) 和 Fedora (20) 上运行的 Qt 应用程序,它需要与 USB HID 设备通信没有 root 权限(以 root 身份运行应用程序可以正常工作,所以没有问题那里)。 在 ubuntu 上,这适用于将 HID 设备添加到 plugdev 组的以下规则。

SUBSYSTEM=="usb", ATTR{idVendor}=="0600", ATTR{idProduct}=="0070", MODE="0660", GROUP="plugdev"
SUBSYSTEM=="hidraw" , ATTRS{idVendor}=="0600", ATTRS{idProduct}=="0070", MODE="0660", GROUP="plugdev"

但是将此规则添加到 Fedora 中似乎无法从应用程序访问 HID 设备。这部分是因为在 Fedora 上不存在 plugdev 组。

但我似乎无法在 Fedora 上找到与 plugdev 等效的工具,也找不到使应用程序能够访问 HID 设备的正确方法。

有什么想法吗?

编辑 >>
尝试像@askb 建议的那样删除 GROUP 权限。这并没有解决任何问题。但作为测试,我已将RUN+="/udevtest.sh" 添加到SUBSYSTEM=="hidraw" 中,该SUBSYSTEM=="hidraw" 将某些内容记录到/tmp/udev.log 中,这似乎反应很好。所以udev规则通过了。但是我的应用程序(使用 libusb)仍然只能在运行 sudo 时访问它...

【问题讨论】:

    标签: fedora hid udev


    【解决方案1】:

    “plugdev”组是解决热插拔设备问题的 Ubuntu 独有功能 权限。其他发行版不需要这个,也不应该开始使用 任何小组作业 IMHU。我建议在 Fedora 的 udev 规则文件中删除 GROUP="plugdev",并为两个发行版提供一个差异规则文件作为替代。只要产品/供应商 ID 匹配,udev 规则文件就应该按预期工作。

    【讨论】:

    • 尝试删除组权限,但仍然没有成功。 (见上面的编辑)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多