当前位置: 首页>>技术教程>>正文


如何允许非root用户访问/ttyUSB0?

,

问题描述

自从我从Ubuntu 10.04(Lucid Lynx)更新到Ubuntu 12.04(Precise Pangolin)以来,如果我没有root用户访问权限,则无法访问/ttyUSB0中连接的设备。

更具体地说,我使用USB-to-serial com端口转换器使用名为PuTTY的软件访问和配置Cisco设备。碰巧,由于我升级到12.04,因此当我以gksudo putty的身份运行PuTTY时,它只会看到连接的设备。如果不是,则显示“无法连接到端口/ttyUSB0”。

我已经设法通过chmod 666更改了权限,并且可以使用,但是如果我断开USB设备的连接并重新连接,它只能回到根目录。如何永久允许非root用户访问?我有一个线索,可能是通过udev规则,但我不知道该怎么做。

观察:制造商和驱动程序是”PROLIFIC”

最佳方案

这可能与modemmanager as detailed here有关。

我删除了(sudo apt-get remove modemmanager),它解决了我的问题。

但是,您仍然需要属于dialout组。

次佳方案

该设备很可能已连接到用户组dialout。只需将您的用户添加到拨出组中,即可对设备拥有适当的权限。

sudo usermod -a -G dialout $USER

(您可能需要注销并重新登录,以使新组生效。)

无需弄乱权限或udev规则。

第三种方案

sudo adduser <the user you want to add> dialout
sudo reboot

由”Try now”提及对我有用。检查您是否将dialout作为ttyUSB0的组:

ls -l /dev/ttyUSB0

在我的情况下,输出为:

crw-rw---T 1 root dialout 188, 0 Feb 12 12:01 /dev/ttyUSB0

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9461.html,未经允许,请勿转载。