Ubuntu adb devices : no permissions 解决方法

ntun下USB连接Android手机后,使用adb devices 出现如下:

List of devices attached

???????????? no permissions

同时在DDMS中显示设备名也显示????,也无法显示进程名,无法查看log。

一、工具介绍
android-sdk-linux_x86/tools下有一堆工具,今天要用的是:Android Debug
Bridge,在android开发过程中,这个工具是使用得最多的。(缩写adb,有点像gcc的gdb似的)

adb start-server – 实际上它会启动一个 adb fork-server server
adb kill-server –
kill掉
adb devices – 列出所有的设备

二、设置usb权限
因为ubuntu这样的系统都是默认以非root身份在运行的,要使用usb调试,需要sudo支持。

$ lsusb
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root
hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus
003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device
003: ID 413c:2106 Dell Computer Corp.
Bus 002 Device 002: ID 0461:4d81
Primax Electronics, Ltd
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation
1.1 root hub
Bus 001 Device 010: ID 0bb4:0c87 High Tech Computer Corp.

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

列表中,Bus 001 Device 010: ID 0bb4:0c87 High Tech Computer Corp.
这一行为htc手机的usb使用端口,记录一下,id为0bb4(基于上所有的htc都是这个ID)。

$sudo vim /etc/udev/rules.d/70-android.rules

加入以下内容:

SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4",
ATTRS{idProduct}=="0c87",MODE="0666"

其中的idvendor
idProduct指的是USB的ID可以使用lsusb查询得到。
比如我的是:
lsusb

Bus 001 Device 010:
ID 0bb4:0c87 High Tech Computer Corp

ID 0bb4 就是idVendor ,0c87就是
idProduct

运行命令,重启udev:

$sudo chmod a+rx /etc/udev/rules.d/70-android.rules
$sudo service udev
restart

三、重新启动adb server
(很重要)拔掉usb重新连上再执行:

sudo ./adb kill-server
./adb devices
./adb root (这一步很重要
)

四、使用usb进行调试
     问题说明中的问题至此已经得到解决。

在DDMS选择相应的devices,可以看到log了。。。。

五、知识积累

1. Gooogle udev

2.拔插usb,使用以下命令可以实时监视系统信息

             
sudo tail -f /var/log/messages

六、ubuntu 敲 adb devices 设备列表为空,但lsusb可以查看到PID与VID

sudo gedit ~/.android/adb_usb.ini
  编辑该文件

加入0x0bb4 后执行下面命令

sudo service udev restart

android update adb  更新服务

七、参考

1. http://edu.codepub.com/2010/1229/28405.php

2.
http://blog.csdn.net/zhenwenxian/archive/2010/09/23/5901350.aspx

时间: 2024-08-13 07:37:34

Ubuntu adb devices : no permissions 解决方法的相关文章

adb devices : ???????? no permissions 解决方法

adb devices ------------------------------- List of devices attached ???????????? no permissions ------------------------------ 方法一: 在 etc/udev/rules.d/51-android.rules 文件中添加 SUBSYSTEM=="usb", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=

ubuntu上出现 ???????????? no permissions 解决方法

在ubuntu下有时也会出现不识别android设备的问题,解决方法有两个. 方法一: 执行lsusb 正常应该显示为: [email protected]:~$ lsusb Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 003 Device

adb devices: no permissions

现象: #sudo adb root Error:insufficient permissions for device #adb devices List of devices attached ?????????????                  no permissions 解决方法: $sudo –s #adb kill-server #adb start-server #exit $adb root $adb devices

双系统(win7+ubuntu)ubuntu磁盘空间不足时解决方法

原文网址: http://www.lupaworld.com/thread-868507-1-1.html 问题描述: 双系统(win7+ubuntu)ubuntu系统提醒磁盘空间不足,又不想重装系统. 解决思路:第一步,在win7下划出一块可用空间:第二步,利用gparted软件将此可用空间划给ubuntu系统:第三步,最后利用grub修复技术修复损坏的grub. 具体步骤: 第一步:在win7下划出一块可用空间 登录win7系统--> (右击)计算机-->  属性  --> 存储 -

Ubuntu几种常见乱码解决方法

一.网页中的flash乱码:        ubuntu默认浏览器是Firefox,但是Ubuntu默认不安装像flash这种带版权的软件,所以当你浏览像youku或网页播放器时,这种带有 flash的网页,firefox会提示你安装缺失插件,选择安装Flash插件后确实是可以显示flash了,不过你会发现,在flash上面的中文都是方框!注意:建议选择adobe的插件,这是由于兼容性.    解决方法:    终端中输入:    cd /etc/fonts/conf.d/    sudo cp

[ubuntu] adb devices出现no permissions

简书排版 http://www.jianshu.com/p/46e8848c6646 今天把一款测试的华为手机带回家,发现无法联机调试 笔者操作系统是 ubuntu 14.04 如果是windows找对应的驱动即可 byhook@byhook:~$ adb devices List of devices attached R8V5T15B27002337 no permissions (verify udev rules); see [http://developer.android.com/t

解决ubuntu adb devices 找不到设备

遇到个问题,在手机已经处于开发者模式.usb调试打开.驱动等状态正常的情况下,有时候还是会出现adb devices找不到任何设备的情况 可以尝试通过以下步骤解决: 1. 查看本机USB设备列表 lsusb 来自: http://man.linuxde.net/lsusb 结果如下: 在上面的列表中找到新增的USB设备,如果看不出来哪个是新增的设备,可以将USB设备拔下重新执行lsusb来进行对比 记录"ID"后面和设备描述前面之间的数值,比如上面的:18d1:4ee2 2. 编辑 5

Vagrant box ubuntu/xenial64 没有密码的解决方法

参考了Vagrant box ubuntu/xenial64 の ubuntuユーザ の passwordについて 1. 可以通过 Git Bash 使用  vagrant ssh 登录到Ubuntu/xenial64的终端中 2. 在终端中输入: vim useradd.sh 文件内容 #!/bin/bash set -Ceu USER="vagrant" # password "vagrant" を SHA-512 でハッシュ化 PASSWORD=$(perl

VMware 12虚拟机下Ubuntu 16连不上网解决方法

打开自带Firefox浏览器,显示连接不上网,终端下 ping 也显示 unkown 解决方法: 1.打开虚拟机的“编辑”选项,选择“虚拟网络编辑器” 2.选择VMnet8(我不知道为啥VMnet8这么神奇,要是新建其他号还不行,暂且不管),点击右下角“更改设置” 3.同时打开 Windows下面的DOS,输入ipconfig/all,看到虚拟网络适配器的地址为192.168.40.1 然后依次配置 1处为192.168.40.0 2处起始地址为192.168.40.128,结束地址为192.1