Як налаштувати ADB на Fedora (CentOS)

Поширте інформацію:

Перекладено звідси.

Інструкції написані для Fedora 20, але для CentOS відмінностей не буде, або вони будуть незначними.

1) Встановити adb

Просто

$ sudo yum install android-tools

2) Дозволити налагодження USB на android-пристрої

Відкриваємо Налаштування-Параметри розробника (якщо такого пункту в меню налаштувань немає, знайдіть як відобразити його на вашому пристрої).

Ставимо галочку “Налагодження USB”, підтверджуємо.

3) Визначити USB-ідентифікатор android-пристрою

Встановіть пакет usbutils, якщо він у вас ще не встановлений

$ sudo yum install usbutils

Під’єднайте пристрій android через USB до комп’ютера під керування Fedora і визначте ідентифікатор пристрою за допомогою команди lsusb

$ lsusb

Команда виводить таку інформацію, наприклад

Bus 001 Device 002: ID 0bb4:0c03 HTC (High Tech Computer Corp.) Android Phone [Fairphone First Edition (FP1)]

В цій статті надалі будемо позначати:

MMM – номер шини (в прикладі MMM = 001)

NNN – номер пристрою на шині (в прикладі NNN = 002)

AAAA – ідентифікатор постачальника (в прикладі AAAA = 0bb4)

BBBB – ідентифікатор пристрою (в прикладі BBBB = 0c03)

4) Перевірити, чи є доступ до спеціального файлу, пов’язаного з пристроєм

$ ls -l /dev/bus/usb/MMM/NNN

(MMM і NNN замініть номерами з виведення lsusb)

$ ls -l /dev/bus/usb/001/002
crw-rw-r--+ 1 root root 189, 2 лют 21 19:00 /dev/bus/usb/001/002

З цього бачимо, що власником змонтованої файлової системи буде root, інші користувачі будуть мати доступ лише для читання.

Отже, adb буде працювати тільки під root`ом. Проблема “adb не працює” серед народу в 9 випадках із 10 виникає саме з цієї причини.

Але заходити в сеанс root лише для того, щоб використовувати adb – неправильно ;) Тому зробимо її доступною для звичайного користувача.

5) Створити групу користувачів і скомандувати udev створювати файл пристрою для цієї групи

Спочатку створюємо групу:

$ sudo groupadd androiddev

Тут ‘androidev’ – назва групи. Може бути довільною, певна річ. Тоді додаємо себе до цієї групи

$ sudo usermod -aG androiddev your_login_name

Тут ‘your_login_name’ – ваш логін. За необхідності додайте ще інших користувачів.

Тепер з-під root`а створюємо файл /etc/udev/rules.d/99-android-debug.rules і записуємо в нього таке:

SUBSYSTEM=="usb", ATTR{idVendor}=="AAAA", ATTR{idProduct}=="BBBB", GROUP="androiddev", MODE="0664"

де AAAA – ідентифікатор постачальника, а BBBB – ідентифікатор пристрою. Заповніть їх значеннями з виведення команди lsusb

6) Перезавантажити інформацію про своє членство в групах користувачів

Просто “вийдіть і зайдіть”, або застосуйте такий “жахливий хак”:

$ exec su -l $USER

7) Перезавантажити правила udev

$ sudo udevadm control --reload
$ sudo systemctl restart systemd-udevd.service

Тепер від’єднайте пристрій і приєднайте його знову.

8) Перевіряємо

$ adb devices

В цьому місці пристрій має попросити вас перевірити RSA-ключ комп’ютера. Щоб впевнитися, що ключ правильний, введіть

$ cut -d' ' -f1 ~/.android/adbkey.pub | base64 -d | md5sum

Якщо отримана контрольна сума MD5 співпадає з відображеною на екрані пристрою, можете сміливо авторизувати :)

Тепер adb працює

$ adb devices
List of devices attached
PAP4055DUO  device

П.С. І не потрібно танцювати з бубном, вимикати і вмикати пристрій, змінювати порт, перезавантажувати комп’ютер, вбивати перезапускати adb та проводити інші ритуали :)

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.