Как исправить ошибку ‘* failed to start daemon error: cannot connect to daemon’ на Linux Ubuntu

Вопрос или проблема

Мне пришлось установить инструменты adb на мой Linux Ubuntu через командную строку, но когда я выполняю команду adb devices, я получаю следующий вывод в моем терминале:

uriel@uriel-linux-ubuntu:~$ adb devices

List of devices attached
adb server version (41) doesn't match this client (39); killing...
ADB server didn't ACK
Full server startup log: /tmp/adb.1000.log
Server had pid: 8577
--- adb starting (pid 8577) ---
adb I 02-28 16:19:21  8577  8577 main.cpp:57] Android Debug Bridge version 1.0.39
adb I 02-28 16:19:21  8577  8577 main.cpp:57] Version 1:8.1.0+r23-5ubuntu2
adb I 02-28 16:19:21  8577  8577 main.cpp:57] Installed as /usr/lib/android-sdk/platform-tools/adb
adb I 02-28 16:19:21  8577  8577 main.cpp:57] 
adb I 02-28 16:19:21  8577  8577 adb_auth_host.cpp:416] adb_auth_init...
adb I 02-28 16:19:21  8577  8577 adb_auth_host.cpp:174] read_key_file '/home/uriel/.android/adbkey'...
adb I 02-28 16:19:21  8577  8577 adb_auth_host.cpp:391] adb_auth_inotify_init...
adb server killed by remote request

failed to start daemon
error: cannot connect to daemon

uriel@uriel-linux-ubuntu:~$

Как мне решить эту проблему?

Пожалуйста, установите adb от имени root.

Затем в /root/.bashrc: добавьте adb в путь. Не забудьте правильно обновить путь к вашей установке adb.

Запустите новый Bash и попробуйте снова “adb devices”.

Удачи!

Ответ или решение

Ошибка «* failed to start daemon error: cannot connect to daemon» при работе с ADB на Ubuntu может быть довольно распространённой, и её решение может иметь несколько уровней сложности в зависимости от точных причин. В данной ситуации важно понять основные моменты функционирования ADB (Android Debug Bridge) и причины, по которым могут возникать такие ошибки.

ТЕОРИЯ

ADB — это инструмент командной строки, который позволяет взаимодействовать с Android-устройствами. Он служит для отладки приложений, переноса файлов между устройством и компьютером, выполнения команд в командной строке на устройствах и многого другого. ADB работает по серверно-клиентской модели: клиент (ваша машина) отправляет команды на сервер, который затем общается с демоном, запущенным на вашем устройстве.

Ошибка, с которой вы столкнулись, связана с несовпадением версий клиента и сервера ADB. Клиент, запущенный на вашем компьютере, использует версию 39, в то время как сервер запускает версию 41. Это несовпадение версий нарушает процесс взаимодействия ADB и приводит к ошибкам подключения. Добавим к этому необходимость обеспечения корректной установки и настройки ADB на вашем Ubuntu.

ПРИМЕР

Для решения проблемы несовпадения версий и устранения возникшей ошибки выполните следующие шаги:

  1. Обеспечьте очистку старых версий ADB:

    • Откройте терминал и введите:
      sudo apt-get remove adb

      Это действие удалит старую версию ADB.

  2. Установите правильную версию ADB:

    • Чаще всего наиболее правильным будет загрузить самую свежую версию ADB Platform Tools напрямую с официального сайта Android:
      • Перейдите по ссылке и скачайте инструменты платформы для Linux.
      • Разархивируйте архив в удобную для вас директорию.
  3. Настройка PATH:

    • Откройте файл ~/.bashrc для редактирования, добавив путь к каталогу с разархивированными инструментами платформы:
      export PATH=$PATH:/path/to/extracted/platform-tools

      Не забудьте заменить /path/to/extracted/platform-tools на фактический путь к каталогу.

  4. Примените обновления в текущей сессии терминала:

    • Выполните команду:
      source ~/.bashrc

      Это применяет изменения, внесённые в файл .bashrc, к текущей сессии.

  5. Перезапуск ADB:

    • Убедитесь, что ни один демон ADB не запущен:
      adb kill-server
    • После этого запустите команду:
      adb start-server
  6. Проверка устройства:

    • Повторите команду, чтобы проверить подключенные устройства:
      adb devices

ПРИМЕНЕНИЕ

После выполнения всех указанных шагов несовпадение версий ADB должно быть устранено. Вы убедились, что у вас установлены последние инструменты платформы, а путь правильно настроен. Теперь сервер ADB и его клиент должны общаться безошибочно.

Если после этого проблема будет продолжаться, имеет смысл проверить, что все необходимые отладочные функции на вашем Android-устройстве включены. Убедитесь, что режим отладки USB активирован в меню разработчика, и попробуйте подключить устройство к другому USB-порту или использовать другой кабель, чтобы исключить потенцальные аппаратные неисправности.

Этот процесс исправления ошибок ADB улучшит общее взаимодействие между вашим Ubuntu и Android устройством, обеспечивая удобство и эффективность разработки и отладки. Применение постоянного подхода к администрированию и поддержке может не только решить текущие проблемы, но и предотвратить их возникновение в будущем.

Оцените материал
Добавить комментарий

Капча загружается...