如何使设备在插入时具有读/写许可?
我有一个自制设备,我写了一个数据采集程序。 但每次插入设备时我都必须更改/dev/ttyACM0
的权限,以便端口可用于数据传输。 如何使此设备默认具有读/写权限。 该设备的lsusb
输出是:
Bus 003 Device 005: ID ffff:0005
如果您是dialout
组的成员,则可以访问串行设备,包括ttySx
, ttyUSBx
和ttyACMx
设备,而无需更改权限。
$ sudo adduser myusername dialout
或者,您可以创建一个udev规则来设置附加设备的权限。 请参阅https://askubuntu.com/a/112573/471836
对于将来需要这个问题的人,我会为自己的问题添加一个答案。 我按照@Adam Lussier的回答,用这个内容创建了/etc/udev/rules.d/50-ttyusb.rules
文件(由@Sneetsher提出):
ACTION=="add", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="0005", MODE="0666"
像这样,只有这个特定的设备具有读/写权限。 任何想要了解更多关于编写规则文件的人的参考 。