赞
踩
no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]
参考:https://blog.csdn.net/binglumeng/article/details/69525361
安装好adb工具之后,连接安卓设备,并开启usb调试,使用adb devices
发现显示出来的竟然是?????? no permissions
。
在网上查看到有相关解决方案1
首先,在未连接Android设备的情况下,查看一下Linux下的usb,类似如下
-
- # 运行lsusb命令
-
- lsusb
-
- # 结果
-
- Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
- Bus 001 Device 003: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
- Bus 001 Device 005: ID 0cf3:e005 Atheros Communications, Inc.
- Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
然后,打开android设备的usb调试模式,连接到Linux电脑上,运行
-
- # 运行lsusb指令,查看设备信息
-
- lsusb
-
- # 显示结果如下
-
- Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
- Bus 001 Device 003: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
- Bus 001 Device 005: ID 0cf3:e005 Atheros Communications, Inc.
- Bus 001 Device 019: ID 2207:0010 # 此条新增的条目,则是新连接的android设备
- Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
如上则可以查看到新连接的Android设备信息,注意其ID号,这里是2207
和0010
然后cd /etc/udev/rules.d/
目录下,查看.rules
文件
- cd /etc/udev/rules.d/
- ls
-
- # 结果如下,名称可能不同
-
- 51-android.rules
-
- # 然后编辑该文件
-
- sudo vim 51-android.rules
-
- # 然后加入如下代码
-
- SUBSYSTEM=="usb",ATTRS{idVendor}=="2207",ATTRS{idProduct}=="0010",MODE="0666"
这里2207
和0010
则分别是上一步中查看到的android设备的额ID信息,MODE应该是表示权限。
重启设备
- sudo chmod a+rx /etc/udev/rules.d/51-android.rules
- sudo service udev restart
至此,拔掉usb重新连接,然后在运行如下命令,便可进行adb操作
- sudo adb kill-server
- sudo adb start-server
- sudo devices
- # 若要需要root权限进入Android设备的shell,可以运行
- adb root
- adb remount
- adb shell
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。