Решение проблемы «???????????? no permissions» в adb
Для теста решил поставить Android SDK на свою машину (у меня смартфон с ОС Андроид), но после установки и докачивания компонентов команда
./adb devices
вывела следующий текст:
List of devices attached ???????????? no permissions
Показать
Оказалось, что в моей системе не было правильно настроенных правил демона udev для этого устройства. Для решения проблемы необходимо знать USB-ID производителя и устройства (VendorID и ProductID), ну и конечно имя пользователя, под которым регистрируетесь в системе.
Я создал файл-правило udev с именем /etc/udev/rules.d/51-android.rules и с таким содержимым:
SUBSYSTEM=="usb", ATTRS{idVendor}=="VendorID", ATTRS{idProduct}=="ProductID", MODE="0666", OWNER="UserLogin"
Затем перегрузил демон udev:
sudo /etc/init.d/udev reload
После этого вывод команды
./adb devices
должен вывести что-то вроде:
List of devices attached DeviceID device
Бывает, что уже при настроенных правилах udev всё равно не работает, тогда помогает выполнение команд:
sudo ./adb kill-server sudo ./adb start-server ./adb devices
После перезапуска сервера ADB мой смартфон определился нормально.