Determine your device id
- Unplug your device from the computer and type
lsusb
in the terminal. You should get an output similar to this:
Bus 002 Device 002: ID 8087:8000 Intel Corp. Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:8008 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 003 Device 033: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0 Bus 003 Device 047: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1 Bus 003 Device 002: ID 174f:148d Syntek Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- Now plug your phone into the computer and run the command again, the output should be different:
Bus 002 Device 002: ID 8087:8000 Intel Corp. Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:8008 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 003 Device 033: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0 Bus 003 Device 047: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1 Bus 003 Device 002: ID 174f:148d Syntek Bus 003 Device 060: ID 05c6:6765 Qualcomm, Inc. Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
-
Take a note of the new output ID. For me it's
Bus 003 Device 060: ID 05c6:6765 Qualcomm, Inc.
-
The value we are interested in is the first one before the colon (:); in this case
05c6
. You can check that the value you get is the same as the ones listed here
Note
On Arch Linux, it might be enough to install android-udev package, so you can skip the below steps. See ArchWiki#Adding udev rules
Some code
-
Use your favourite text editor to edit the file:
/etc/udev/rules.d/51-android.rules
-
In the new file, enter the following:
# Phone name
SUBSYSTEM=="usb", ATTR{idVendor}=="id_you_copied", MODE="0666", GROUP="plugdev"
-
Make sure to replace
id_you_copied
with the one we determined from the previous section -
Save and close the file.
-
Now in the terminal, run the following commands
sudo chmod a+r /etc/udev/rules.d/51-android.rules sudo systemctl restart udev
The first command is to make the file we created readable by all users (should be unless you've set a umask of 0027 or 0077) and the second command restarts the udev (usb device) manager, via systemd.
- Now you can try the command
fastboot -l devices
and it should successfully list your device as one of the entries