我在 Ubuntu 中使用 Arduino IDE,但串行端口出现问题。它在过去一直有效,但由于可能不必要的原因,我觉得需要将某些文件的所有权从 root 所有权更改为我的用户所有权。
这使 IDE 正常工作,但我无法使用正确的串行端口。在 dev 文件夹中,我需要的端口被列为权限 166。有人(不再在该区域帮助我)将权限交换为 666,这使得它一切正常。
但是,一旦我重新启动计算机,它就会恢复,如果我现在尝试使用以下命令:
sudo chmod 666 ttyACM0
Run Code Online (Sandbox Code Playgroud)
没发生什么事。没有错误消息,但也没有权限更改。
我怎样才能改变它,我怎样才能让它永久改变。
如果这个问题过于简单或不清楚,我深表歉意,我是一个 ubuntu 菜鸟,我不会吝啬反馈!
由于我从 Ubuntu 10.04 (Lucid Lynx) 更新到 Ubuntu 12.04 (Precise Pangolin),如果我没有 root 访问权限,我将无法访问 /ttyUSB0 中连接的设备。
更具体地说,我使用 USB 到串行 com 端口转换器通过名为PuTTY 的软件访问和配置 Cisco 设备。碰巧的是,自从我升级到 12.04,PuTTY 仅在我将其作为gksudo putty. 如果没有,它会显示“无法连接到端口 /ttyUSB0”。
我设法通过 更改了权限chmod 666,并且它可以工作,但是如果我断开 USB 设备并重新连接,它只会返回到 root。如何永久允许非 root 访问?我知道这可能是通过udev规则实现的,但我不知道该怎么做。
观察:制造商和驱动程序是“PROLIFIC”
我正在尝试使用我的 9 针串行端口将我的汽车 ECU 连接到我的计算机(megasquirt 控制器)。我以前在 Ubuntu 10.04 上做过这个,但现在我刚刚升级到 12.04,它根本无法连接。我之前没有任何问题。现在我根本无法打开这个端口。
使用chmod我得到这个:
~$ chmod o+rw /dev/ttyS0
chmod: changing permissions of `/dev/ttyS0': Operation not permitted
Run Code Online (Sandbox Code Playgroud)