每次重新启动计算机时,我都必须执行 sudo chmod a+rw /dev/ttyS0 来运行任何使用串行通信的程序。
答案1
这个问题之前已经回答过了。你需要做的是将用户添加到该端口所在的默认组,例如:
crw-rw---- 1 root dialout ... /dev/ttyS0
组为dialout
。将用户添加到该组:
sudo adduser $USER dialout
重新启动进行测试。
答案2
我必须 sudo chmod a+rw /dev/ttyS0
这是因为udev
每次启动时都会动态创建 tty。无需进入为什么默认情况下你的ttyS0
不起作用,强力解决方案就是简单地将其添加chmod a+rw /dev/ttyS0
到你的/etc/rc.local
文件中(这样它会在每次启动时自动执行。)