adb devices => no permissions (user in plugdev group; are your udev rules wrong?)

Abhishek Dwivedi picture Abhishek Dwivedi · Dec 21, 2018 · Viewed 63.5k times · Source

I am getting following error log if I connect my android phone with Android Oreo OS to Linux PC

$ adb devices
List of devices attached
xxxxxxxx    no permissions (user in plugdev group; are your udev rules wrong?);
see [http://developer.android.com/tools/device.html]

I tried with the link provided by the error message but still getting same error.

Answer

Abhishek Dwivedi picture Abhishek Dwivedi · Dec 21, 2018

Check device vendor id and product id:

$ lsusb
Bus 001 Device 002: ID 8087:8000 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 078: ID 138a:0011 Validity Sensors, Inc. VFS5011 Fingerprint Reader
Bus 002 Device 003: ID 8087:07dc Intel Corp. 
Bus 002 Device 002: ID 5986:0652 Acer, Inc 
Bus 002 Device 081: ID 22b8:2e81 Motorola PCS 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Here my android device is Motorola PCS. So my vid=22b8 and pid=2e81.

Now create a udev rule:

$ sudo vi /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e81", MODE="0666", GROUP="plugdev"

Now the device is good to be detected once udev rule is reloaded. So, let's do it:

$ sudo udevadm control --reload-rules

After this, again check if your device is detected by adb:

$ adb devices
List of devices attached
ZF6222Q9D9  device

So, you are done.

If it still doesn't work, unplug/replug the device.

If it still doesn't work, restart your OS.