本篇文章重点为你们讲解一下Linux中永久更改USB设备权限具体方式,有须要的男子伴可以参考一下。
问题
当我尝试在Linux中运行USBGPS接收器时我遇见了下边来自gpsd的错误。看起来gpsd没有权限访问USB设备(/dev/ttyUSB0)。我该怎么永久更改它在Linux上的权限?
1. gpsd[377]: gpsd:ERROR: read-only device open failed:Permission denied
2. gpsd[377]: gpsd:ERROR:/dev/ttyUSB0: device activation failed.
3. gpsd[377]: gpsd:ERROR: device open failed:Permission denied - retrying read-only
解决方案
当你在运行一个会读取或则写入USB设备的进程时linux 给用户分配权限,进程的用户/组必须有权限如此做才行。其实你可以自动用chmod命令改变USB设备的权限,并且自动的权限改变只是暂时的。USB设备会在上次重启时恢复它的默认权限。
作为一个永久的方法LINUX虚机,你可以创建一个基于udev的USB权限规则linux 给用户分配权限,它可以按照你的选择分配任何权限模式。下边是该怎么做。
1.使用lsusb命令找出USB设备的vendorID和productID
$ lsusb -vvv
里面lsusb的输出中,找出你的USB设备红旗linux6.0,并找出”idVendor”和”idProduct”字段。本例中,我们的结果是idVendor(0x067b)和idProduct(0x2303)
2.创建一个新的udev规则
$ sudovi/etc/udev/rules.d/50-myusb.rules
用你自己的”idVendor”和”idProduct”来替换默认值。MODE=”0666″表示USB设备的权限。
SUBSYSTEMS=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", GROUP="users", MODE="0666"
3.重启笔记本或重新加载udev规则
$ sudo udevadm control --reload
验证下USB设备的权限: