SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"
/etc/udev/rules.d/51-android.rules
/etc/udev/rules.d/90-android.rules
/etc/udev/rules.d/99-android.rules
sudo /etc/init.d/udev restart
adb kill-server
adb start-server
adb devices
There is another Vendor id for NexusOne. "0bb4" is not for Nexus but G1:
Just out of curiosity how in the hell would I have otherwise known to create a file with a seemingly random name in a random folder?
and why 51-android.rules? why not 1-android or 5000000-android?
Welcome to Linux!
Actually, the more you use it, you'll find that you'll pickup these bits along the way, just like this.
The files are processed in order of their name so 51-xxx is mid-way through, 99-xx is at the tail end of the processing order. Sometimes, the order is important.
Also, after posting the wrong info to you earlier, I deleted the entry I posted. But, it turns out, the Nexus one poses as both id numbers. While in Android its VendorId=18d1, but in the bootloader (waiting in fastboot usb), the VendorId=0bb4.
So, I put both lines in one file today and all is well again.
I.e:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
and I changed my filename to 99-android.rules
then ran:
sudo restart udev
and now I can access the phone as a non root user again, either from adb or fastboot-linux.
Welcome to Linux!
Actually, the more you use it, you'll find that you'll pickup these bits along the way, just like this.
The files are processed in order of their name so 51-xxx is mid-way through, 99-xx is at the tail end of the processing order. Sometimes, the order is important.
Also, after posting the wrong info to you earlier, I deleted the entry I posted. But, it turns out, the Nexus one poses as both id numbers. While in Android its VendorId=18d1, but in the bootloader (waiting in fastboot usb), the VendorId=0bb4.
So, I put both lines in one file today and all is well again.
I.e:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
and I changed my filename to 99-android.rules
then ran:
sudo restart udev
and now I can access the phone as a non root user again, either from adb or fastboot-linux.
I am definitely glad you posted about the differing device id when using the bootloader. That little detail kicked my butt for about an hour before I figured out what was going on. In Ubuntu (and probably other distros) there is a command line utility called lsusb, that gives you the nitty-gritty details about all the connected usb devices, including the device id. Just in case anyone stumbles across this thread for some yet unreleased android phone.
You may also need to restart the adb daemon:
Code:adb kill-server adb start-server adb devices
You need to create a file named
/etc/udev/rules.d/51-android.rules
containing the line:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
you need to be root to create the file, use
sudo -s
to become root, then
gedit /etc/udev/rules.d/51-android.rules
will open the new file for editing.
You'll have to reboot when done.
You need to create a file named
/etc/udev/rules.d/51-android.rules
containing the line:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
you need to be root to create the file, use
sudo -s
to become root, then
gedit /etc/udev/rules.d/51-android.rules
will open the new file for editing.
You'll have to reboot when done.
SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"
/etc/udev/rules.d/51-android.rules
/etc/udev/rules.d/90-android.rules
/etc/udev/rules.d/99-android.rules
sudo /etc/init.d/udev restart
adb kill-server
adb start-server
adb devices