如何使设备在插入时具有读/写许可?

我有一个自制设备,我写了一个数据采集程序。 但每次插入设备时我都必须更改/dev/ttyACM0的权限,以便端口可用于数据传输。 如何使此设备默认具有读/写权限。 该设备的lsusb输出是:

Bus 003 Device 005: ID ffff:0005

如果您是dialout组的成员,则可以访问串行设备,包括ttySxttyUSBxttyACMx设备,而无需更改权限。

 $ 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" 

像这样,只有这个特定的设备具有读/写权限。 任何想要了解更多关于编写规则文件的人的参考 。