首页 > 解决方案 > /dev/ttyACM0:openSUSE 权限被拒绝

问题描述

我正在尝试使用基于 Arduino Leonardo 的“Arduboy”和 Arduino IDE。但是,由于以下错误,我无法上传示例代码:

avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied
Problem uploading to board.  See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

在将其标记为重复之前,这是我尝试过的所有内容

这些事情都没有奏效。起作用的是这样运行它xdg-suxdg-su -c ./arduino. 但是,我认为每次都以 root 身份运行它并不是最好的主意。有什么我可以做的吗?

我正在运行 openSUSE Tumbleweed。

标签: linuxarduinoserial-portarduino-ideopensuse

解决方案


在上传过程中,基于 Arduino Leonardo 的板会在短时间内中断与 ttyACM* 的通信(如登录和退出)。出于某种原因,在此过程中权限会发生变化。ls -l --full-time /dev/ttyACM0查看上传失败期间重复的输出:

crw-rw-rw- 1 root dialout 166, 0 2019-08-11 17:28:31.974025089 +0200 /dev/ttyACM0
ls: cannot access '/dev/ttyACM0': No such file or directory
crw------- 1 root root 166, 0 2019-08-11 17:42:15.523439213 +0200 /dev/ttyACM0
crw-rw---- 1 root dialout 166, 0 2019-08-11 17:42:16.083442857 +0200 /dev/ttyACM0

我也用风滚草。我目前知道的唯一解决方法是以 root 身份启动 Arduino IDE。


推荐阅读