当前位置:   article > 正文

(保姆级)Ubuntu下的USB设备永久权限+设备起别名方法_ubuntu usb 权限

ubuntu usb 权限

一、Ubuntu下的USB设备权限问题解决方法

Ubuntu中如果给一个USB设备赋予全部权限可以这么做

sudo chmod 777 /dev/ttyUSB0
  • 1

但是这么做只是一次性的,拔掉再插就需要重新赋权限,下面介绍一个一劳永逸的方法

cd /etc/udev/rules.d
  • 1

进入 /etc/udev/rules.d 后,ls 查看一下已有的文件,然后可以自己新建一个规则文件

sudo touch my_ttyusb.rules
  • 1

或者直接

sudo gedit my_ttyusb.rules
  • 1

打开并编辑,编辑内容如下,这样以后只要是ttyUSB设备,都会自动赋予777全部权限

KERNEL=="ttyUSB*", MODE:="0777", GROUP:="dialout
  • 1

然后 ctrl+c 保存,ctrl+q退出
下一步将用户添加进dialout用户组

sudo usermod -a -G dialout $USER
  • 1

接着使其立即生效

sudo udevadm trigger
--------------
运行下面两条命令也可以,重新加载udev,然后再重新运行
sudo service udev reload
sudo service udev restart
  • 1
  • 2
  • 3
  • 4
  • 5

搞定!!!!

PS:udev规则当然也可以删除,使用 rm 命令即可,删除完在重新加载启动即可。

二、USB设备起别名方法

以我目前机载电脑连接的pixhawk6c飞控举例子
在上面新建的my_ttyusb.rules文件中写入

KERNEL=="ttyACM*", MODE:="0777", GROUP:="dialout"  
KERNELS=="1-1:1.0", SYMLINK+="Pixhawk6c"
  • 1
  • 2

说明:
KERNEL==“ttyACM*”, MODE:=“0777”, GROUP:=“dialout” 这行是对全部的ttyACM设备赋予777权限
KERNELS==“1-1:1.0”, SYMLINK+=“Pixhawk6c” 这个是对“1-1:1.0”设备重命名
1-1:1.0是哪里来的呢
首先插上你的设备,然后输入

ls /dev/tty*
  • 1

得到你的设备是哪一个,比如我的是ttyACM7,接着输入

udevadm info --attribute-walk --name=/dev/ttyACM7
  • 1

输出以下信息,回到最上面,注意第二个或第三个
“looking at” 的下面一行的"KERNEL==“xxx”
在这里插入图片描述

找到“KERNELS==1-1:1.0"(我这里是在第二个looking at就找到了,一般会在第二个和第三个里,看到这个形式的就复制下来a-b:c.d)


OK,到了这里回到你刚刚的my_ttyUSB.rules规则文件

KERNEL=="ttyACM*", MODE:="0777", GROUP:="dialout"  
KERNELS=="1-1:1.0", SYMLINK+="Pixhawk6c"
  • 1
  • 2

除了上面这种写法,你也可以这样写,这样写的话就是只给“1-1:1.0"这个设备赋权限并起别名,两种都可以

KERNEL=="1-1:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="Pixhawk6c"
  • 1

别忘了让修改立即生效哦!!!

sudo udevadm trigger
  • 1

最后输入以下命令,查看起别名结果

ls -l /dev |grep ttyACM
  • 1

搞定!!!
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/211306
推荐阅读
相关标签
  

闽ICP备14008679号