/dev/ttyUSB0 permission denied 解决方案

首先我们先查看一下ttyS*和ttyUSB*所属的用户和用户组

ls -l /dev

...
crw-rw----  1 root dialout   4,  64 Nov 25 16:17 ttyS0
crw-rw----  1 root dialout   4,  65 Nov 25 16:17 ttyS1
crw-rw----  1 root dialout   4,  66 Nov 25 16:17 ttyS2
crw-rw----  1 root dialout   4,  67 Nov 25 16:17 ttyS3
...
crw-rw----  1 root dialout 188,   0 Nov 25 16:17 ttyUSB0
...

以上可以看出ttyS*和ttyUSB*文件的拥有者是root,所属于dialout组。

方案一:给当前用户赋予root权限

因为一般情况下不是root用户,对端口没有权限.遇到这种情况,我一般这样做,但是这样做直接更改文件的权限,不好。

sudo chmod 777 /dev/ttyUSB0

修改权限为可读可写可执行,但是这种设置电脑重启后,又会出现这种问题,还要重新设置.

方案二:将当前用户加入到dialout组

sudo usermod -aG dialout $USER

其中$USER获取当前登录的session.把此用户名加入dialout用户组,然后注销下电脑,即可.这样下次重启也不用修改权限了

---------------------------------------------------------------------更新--------------------------------------------------------------------------------------------

/dev/video* permission denied 解决方案也是如此。首先查看/dev/video*属于哪一个组,然后将当前登录的session加入到改组中。

sudo usermod -aG video $USER

 

你可能感兴趣的:(ROS小技巧)