赞
踩
可以通过udev规则来实现这个功能。具体步骤如下:
sudo gedit /etc/udev/rules.d/99-usb-permissions.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=="yyyy", MODE="0666"
其中,xxxx和yyyy分别代表你的USB设备的Vendor ID和Product ID。你可以通过运行lsusb
命令来查看这些信息。
保存文件并退出编辑器。
重新加载udev规则:
sudo udevadm control --reload-rules
现在,当你插入USB设备时,它应该会自动拥有可执行权限了。
假设你插入了一个名为"Arduino Uno"的USB设备,它的Vendor ID是"2341",Product ID是"0043"。你可以按照上面的步骤创建udev规则文件,并将以下内容添加到文件中:
SUBSYSTEM=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0043", MODE="0666"
保存文件并退出编辑器,然后重新加载udev规则:
sudo udevadm control --reload-rules
现在,当你插入Arduino Uno设备时,它应该会自动拥有可执行权限了。
通过udev规则来指定USB设备对应的/dev/ttyUSB序号。具体步骤如下:
1,打开终端,输入以下命令创建udev规则文件:
sudo nano /etc/udev/rules.d/99-usb-serial.rules
2,在打开的文件中添加以下内容:
SUBSYSTEM=="tty", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=="yyyy", SYMLINK+="ttyUSBx"
其中,xxxx和yyyy分别代表你的USB设备的Vendor ID和Product ID。x代表你想要指定的/dev/ttyUSB序号,可以根据你的需要进行更改。
保存文件并退出编辑器。
重新加载udev规则:
sudo udevadm control --reload-rules
现在,当你插入符合规则的USB设备时,它应该会自动创建一个符号链接到指定的/dev/ttyUSB序号。例如,如果你将x设置为0,则设备将被映射到/dev/ttyUSB0。
在lsusb命令的输出中,USB设备的Vendor ID和Product ID通常显示在以下格式的字段中:
Bus <bus_number> Device <device_number>: ID <vendor_id>:<product_id> <device_description>
其中,<vendor_id>
和<product_id>
分别代表USB设备的Vendor ID和Product ID,以16进制表示。
例如,假设你的USB设备是一款名为"Arduino Uno"的开发板,它的Vendor ID是"2341",Product ID是"0043",那么在lsusb命令的输出中,你应该能够看到类似以下的内容:
Bus 001 Device 005: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
其中,"2341"就是设备的Vendor ID,"0043"就是设备的Product ID。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。