我认为这可能是该问题的临时解决方案,而Preston 的解决方案将始终如一地工作。
1. 检查为您的设备分配了哪个 USB 端口
ls
您可以通过调用命令两次(第一次与设备断开连接,第二次与设备连接)来确定为您的设备分配了哪个 USB 端口。
$ ls -l /dev/bus/usb/00*
/dev/bus/usb/001:
total 0
crw-rw-r-- 1 root root 189, 0 1월 10 12:08 001
crw-rw-r-- 1 root root 189, 1 1월 10 12:08 002
/dev/bus/usb/002:
total 0
crw-rw-r-- 1 root root 189, 128 1월 10 12:08 001
crw-rw-r-- 1 root root 189, 129 1월 10 12:08 002
/dev/bus/usb/003:
total 0
crw-rw-r-- 1 root root 189, 256 1월 10 12:08 001
crw-rw-r-- 1 root root 189, 257 1월 10 12:08 002
crw-rw-r-- 1 root root 189, 258 1월 10 12:08 003
crw-rw-r-- 1 root root 189, 259 1월 10 12:08 004
crw-rw-r-- 1 root root 189, 260 1월 10 12:08 005
crw-rw-r-- 1 root root 189, 263 1월 10 15:42 008 <-- this is your device
假设/dev/bus/usb/003/008是您的设备。
2. 给每个人(其他)写权限
根据ls -l
命令的输出,root用户(组)有读/写权限,003/008 port
而其他用户只有读权限。
crw-rw-r-- 1 root root 189, 263 1월 10 15:42 008
您可以允许每个用户chmod
使用命令在特定设备上写入。使用chmod
命令时,您将需要sudo
权限。
$ sudo chmod o+w /dev/bus/usb/003/008
或者
$ sudo chmod a+w /dev/bus/usb/003/008
现在如果你检查usb的权限,你必须看到这个输出
$ ls -l /dev/bus/usb/003/008
crw-rw-rw- 1 root root 189, 263 1월 10 15:42 /dev/bus/usb/003/008
3.每次拔出或关闭系统重复步骤1,2
如果您从 USB 端口拔出设备或关闭系统,您为 USB 端口所做的操作将重置。
您必须再次重复步骤 1,2。
这就是为什么我说我的解决方案是临时的(易变的)。
进一步阅读
我发现这两篇博客文章将有助于您的理解。