Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Upgraded my HTC Slide to Froyo. Connecting Ubuntu 10.10 via USB.

As per instructions here,

    $ cat /etc/udev/rules.d/51-android.rules
    SUBSYSTEM=="usb", ATTR{idVendor}=="0BB4", MODE="0666", GROUP="plugdev" 
    $ ls -l /etc/udev/rules.d/51-android.rules
-rw-rw-rw- 1 root root 72 2011-10-23 20:57 /etc/udev/rules.d/51-android.rules
    $ adb devices
    List of devices attached 
    ????????????    no permissions
share|improve this question

migrated from Oct 24 '11 at 10:41

This question came from our site for professional and enthusiast programmers.

did you execute chmod a+r /etc/udev/rules.d/51-android.rules ? – Reno Oct 24 '11 at 2:42
Check you have usb debugging enabled and plug out and in again – daithib8 Oct 24 '11 at 19:41
up vote 4 down vote accepted

Had this very issue earlier tonight myself.

The 51-android.rules needs to be world read-execute, and it's probably best to run service udev restart (or reboot) after changing this, then re-plug your device.

If it still doesn't work, double-check the vendor ID you've supplied; with your Android device connected, run lsusb. HTC also use the vendor ID 18d1 on newer devices.

share|improve this answer
Or /etc/init.d/udev restart – whuiscool Oct 24 '11 at 14:36
My HTC device is at least an year old. Yet, I had to use 18d1. The android website says 0bb4. Dont know why 0bb4 doesnt work any more. Thanks for the answer. – Anil Nov 23 '11 at 13:34

I had this issue myself when rooting my kindle fire and I did:

$ cat /etc/udev/rules.d/51-android.rules     
SUBSYSTEM=="usb", SYSFS{idVendor}=="1949", MODE="0666"

Then in my ~/.android/adb_usb.ini file I added


Where 1949 is the vendor id for the kindle I believe.

And after restarting the box, adb devices shows my kindle. Or instead of restarting udevadm control --reload-rules and adb kill-server && adb start-server should be sufficient.

share|improve this answer

If you only need to work with devices on a very infrequent basis, you can restart the adb server daemon as root.

./adb kill-server

sudo ./adb devices

Please note that it's not a good idea to make the daemon run as root - any security issues in the daemon will now have root access and ANY user on your system who can run adb (not just your user account) can access the devices - as you're basically ignoring all permission settings in 51-android.rules.

As of note, you do not need to be root to shut down the server - just use ./adb kill-server again.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.