9

我正在编写一个小程序,在 Linux 上使用 libusb-1.0 与特定的 USB HID 产品(由供应商和产品 ID 标识)进行通信。现在,我必须以 root 身份运行程序,因为“libusb 需要对 USB 设备节点的写访问权”。有没有办法更改我需要的设备的权限,这样我就不需要以 root 身份运行我的程序?

4

1 回答 1

11

在现代Linux系统上,udevd(设备节点。man 7 udevOWNERGROUPMODE

最好的方法可能是为应该能够访问设备的用户创建一个新组,然后在 udev 规则中将其设置为组所有者。您可能还需要使用MODE以确保它具有组读/写权限。例如。您的规则可能类似于:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="ffee", ATTRS{idProduct}=="5a5a", MODE="0660", GROUP="foobar"
于 2010-11-30T03:01:40.987 回答