解决Linux非root用户读写串口权限问题
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
解决Linux非root用户读写串口权限问题
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033
目录
系统:Ubuntu 16.04.5
前言
在Linux中,对于非root用户,默认没有串口设备的读写权限。本文将讨论如何让普通用户拥有串口设备的读写权限。
1. 问题描述
通过编程读写串口打开设备时,提示没有权限
[Errno 13] Permission denied: '/dev/ttyUSB0'
2.问题分析
2.1 通过命令查看ttyUSB0权限
dev@dev:~$ ls -l /dev/ttyUSB0
crw-rw---- 1 root dialout 4, 64 10月 12 14:08 /dev/ttyUSB0
可以看到owner 是 root,所属用户组为 dialout
2.2 查看dialout用户组成员
dev@dev:~$ grep 'dialout' /etc/group
dialout:x:20:
我们发现普通用户dev并没有在dialout组。
因此,我们将普通用户dev加入到dialout就可以解决这个问题。
3.问题处理
3.1 临时处理
dev@dev:~$ sudo chmod 777 /dev/ttyUSB0
3.2 永久处理
3.2.1查看当前用户
dev@dev:~$ whoami
dev
3.2.2 当前用户加入dialout组
处理命令(dev为我的用户名,需要修改为自己用户名)
dev@dev:~$ sudo usermod -aG dialout dev
注意:
新增用户到用户组使用usermod 命令
命令参数如下:
usermod -aG {group-name} username
3.2.3 重启
重启后上述命令就生效了
4.验证
dev@dev:~$ grep 'dialout' /etc/group
dialout:x:20:dev
这里使用的是python读取串口数据,代码可以参考博文 Python串口读写实现
Refrence:
觉得文章对你有帮助,可以扫描二维码捐赠给博主,谢谢!
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献11条内容
所有评论(0)