树莓派只能以root身份打开“hid.pyx”

问题描述 投票:0回答:1

import hid
无法以 pi 用户身份访问 USB 中继,只能以 root 身份访问:

系统信息: 树莓派4 蟒蛇3.9

测试pi用户:

pi@raspi:~ $ python3
Python 3.9.2 (default, Feb 28 2021, 17:03:44) 
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hid
>>> dev = hid.device()
>>> dev.open(5824,1503)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "hid.pyx", line 127, in hid.device.open
OSError: open failed
>>> 

测试root用户: 当我以 root 权限运行代码时,它可以工作

root@raspi:/home/pi# python3
Python 3.9.2 (default, Feb 28 2021, 17:03:44) 
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hid
>>> dev = hid.device()
>>> dev.open(5824,1503)
>>> 

我用root创建了以下角色(没有其他办法)99-personal.rules文件夹:/etc/udev/rules.d

KERNEL==“hidraw*”,ATTRS{idVendor}==“5824”,ATTRS{idProduct}==“1503”,> MODE =“0660”,GROUP =“plugdev”

更新为:

sudo udevadm control --reload

我还尝试过重新启动 Pi 并拔下 USB 中继线,然后重新插入 我要怎么做才能让pi用户也有执行权?

python usb raspberry-pi4 udev
1个回答
0
投票

我也遇到了同样的问题。我所做的就是向 /etc/udev/rules.d/99-com.rules 添加一个类似的内容:

SUBSYSTEM=="usb", GROUP="adm", MODE="0660"

我有限的理解是,这使得

usb
组(即默认用户组)中的任何人都可以访问
adm
子系统。重新启动后,我无需以 root 身份运行即可访问 hid 设备。

© www.soinside.com 2019 - 2024. All rights reserved.