在linux下访问usb设备,经常会碰到因没有权限而是失败的问题。解决的方法有两种,一种是临时的,一种是持久的解决方法。
1)lsusb :找出设备的(临时)描述符(重新插拔会改变),
例如输出(Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub)
chmod:赋予用户访问权限
例如 sudo chmod 777 /dev/bus/usb/002/003
2)在/etc/udev/rules.d添加自定义的设备挂载规则。
lsusb:找出设备的描述符
例如输出(Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub)
udevadm:输出设备的详细信息
udevadm info --attribute-walk -name=/dev/bus/usb/002/003
gedit:编辑规则文件,属性值来自于udevadm
sudo gedit 51-my-usb.rules
输入 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0e0f", ATTRS{idProduct}=="0002", OWNER="guest", MODE="0666"
规则生效(插拔)或reboot。(貌似 service udev-post reload 没用)
本文介绍了在Linux系统中解决USB设备访问权限问题的两种方法:临时修改权限和持久化配置。通过lsusb查找设备描述符,使用chmod进行临时权限调整,或在udev规则中添加持久化设置。
1342

被折叠的 条评论
为什么被折叠?



