Estoy ejecutando Ubuntu 10.10 de 64 bits. Tengo ia32-libs instalado junto con la versión 1.0.26 de Android Debug Bridge.
Mis problemas):
adb devices
>>> ???????????? no permisossudo adb devices
>>>> sudo: adb: comando no encontradoadb shell
>>> error: permisos insuficientes para el dispositivo
Supongo que todos están relacionados. Aquí está la información relevante.
$ echo $PATH
/home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/android-sdk-linux_x86/tools:/opt/android-sdk-linux_x86/platform-tools
$ which adb
/opt/android-sdk-linux_x86/platform-tools/adb
$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
???????????? no permissions
$ sudo adb devices
sudo: adb: command not found
$ adb shell
error: insufficient permissions for device
Obtengo los mismos resultados con un Moto Droid rooteado que ejecuta CM6.1 y un G-Tab rooteado que ejecuta una ROM basada en CM7.
He revisado las siguientes publicaciones relacionadas:
- http://forum.xda-developers.com/archive/index.php/t-522827.html
- http://ubuntuforums.org/archive/index.php/t-1164359.html
- El comando adb no se encuentra en el entorno de Linux
Probé la mayoría (no todas) de las sugerencias y no he podido resolver mi problema. Las cosas que no probé me parecieron inapropiadas. Agradecería algunos consejos más y seguiré solucionando problemas.
Una cosa que no probé fue editar /etc/udev/rules.d/70-android.rules. ¿Es probable que ese sea el problema? No veo cómo eso causaría "sudo: adb: comando no encontrado". Quizás mis problemas no estén todos relacionados. De todos modos, en este punto creo que necesito información de otras personas porque no creo que tenga un problema de ruta o los otros problemas comunes discutidos en esas otras publicaciones.
EDITAR: RESUELTO gracias a EboMike y RivieraKid. En realidad, se trataba de dos problemas diferentes:
El elemento # 2 anterior (sudo: adb: comando no encontrado) se resolvió creando un enlace simbólico de la siguiente manera:
$ sudo ln -s /opt/android-sdk-linux_x86/platform-tools/adb /usr/local/sbin/adb
Eso me permitió hacer lo que sugirió EboMike y usar esta solución . Hacer eso era necesario para mi Moto Droid. ( Sin embargo, no era necesario ejecutar adb como sudo para mi Viewsonic G-Tablet).
Mis otros dos elementos se resolvieron implementando la regla udev como sugirió RivieraKid (desde este enlace ).
Respuestas:
¿Alguna razón en particular por la que no hiciste eso? Para responder a la pregunta - ¡SÍ! Las reglas de udev son las que informan a Ubuntu cuál es su dispositivo y, por lo tanto, permiten que las herramientas de espacio de usuario accedan a él.
No podrá utilizar adb sin seguir correctamente las instrucciones .
Sin embargo, con eso en mente, no dice qué versión de Ubuntu está usando, pero tuve problemas con la 10.10; avíseme si necesita que publique el contenido de mi archivo de reglas.
No se preocupe por ejecutar adb a través de sudo, no lo necesita. La
MODE="0666"
regla from the udev le permite acceder al dispositivo como cualquier usuario.EDITAR:
No olvide recargar las reglas:
sudo udevadm control --reload-rules
EDITAR # 2:
Como @Jesse Glick señala correctamente, si adb ya se está ejecutando en modo daemon, también deberá reiniciarlo para que esto funcione:
sudo adb kill-server
He usado sudo aquí, ya que eso garantizará que adb sea eliminado, y es el método oficialmente admitido para detener el servidor. Se reiniciará automáticamente la próxima vez que se use adb, pero esta vez con el entorno correcto.
fuente
adb
demonio, si se estaba ejecutando antes.Debe reiniciar el servidor adb como root. Vea aquí .
fuente
me@desktop:/opt/android-sdk-linux_x86/platform-tools$ sudo adb kill-server sudo: adb: command not found me@desktop:/opt/android-sdk-linux_x86/platform-tools$ adb kill-server me@desktop:/opt/android-sdk-linux_x86/platform-tools$ sudo adb start-server sudo: adb: command not found
adb
no está en el camino de su superusuario. Ingresewhich adb
para averiguar en qué ruta se encuentra, luego agréguelo a la ruta de root.En mi sistema Linux Gentoo / Funtoo tengo problemas similares:
No siempre obtengo la descripción correcta del dispositivo y los permisos insuficientes:
# sudo ./adb devices List of devices attached ???????????? no permissions # ./adb usb error: insufficient permissions for device
Para mí ayuda el cómo de Google. En mi caso, necesitaba agregar la regla udev:
# cat /etc/udev/rules.d/51-android.rules SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
y configurar los derechos del sistema de archivos
# chmod a+r /etc/udev/rules.d/51-android.rules
Después de volver a conectar mi teléfono inteligente, el acceso al teléfono fue exitoso, también aparece ahora en el Selector de dispositivo Android de Eclipse:
# sudo ./adb devices List of devices attached 3XXXXXXXXXXXXXC device # sudo ./adb usb restarting in USB mode
También debe verificar la membresía de su usuario al grupo plugdev.
fuente
Cada respuesta que he leído indica el
SUBSYSTEM=="usb"
. Sin embargo, mi udev (quizás antiguo) necesitaba que se cambiara aDRIVER=="usb"
. Por fin puedo ejecutar el servidor adb como un usuario no root ... yay.Puede ser instructivo observar la salida de udevmonitor --env, seguida de la salida de
udevinfo -a -p <DEVICE_PATH_AS_REPORTED_BY-udevmonitor>
fuente
udevmonitor
yudevinfo
no existen en su máquina, useudevadm monitor
y en suudevadm info -a -p ...
lugar.Tenga en cuenta que los IDE como IntelliJ IDEA tienden a iniciar su propio servidor adb.
Incluso matar manualmente el servidor y ejecutar una nueva instancia con sudo no ayudará aquí hasta que haga que su IDE elimine el servidor.
fuente
reiniciar el servidor adb como root funcionó para mí. ver:
derek@zoe:~/Downloads$ adb sideload angler-ota-mtc20f-5a1e93e9.zip loading: 'angler-ota-mtc20f-5a1e93e9.zip' error: insufficient permissions for device derek@zoe:~/Downloads$ adb devices List of devices attached XXXXXXXXXXXXXXXX no permissions derek@zoe:~/Downloads$ adb kill-server derek@zoe:~/Downloads$ sudo adb start-server * daemon not running. starting it now on port 5037 * * daemon started successfully * derek@zoe:~/Downloads$ adb devices List of devices attached XXXXXXXXXXXXXXXX sideload
fuente
Solucioné este problema en mi sistema debian GNU / Linux al anular las reglas del sistema de esa manera:
Utilicé contenido de archivos vinculados en: http://rootzwiki.com/topic/258-udev-rules-for-any-device-no-more-starting-adb-with-sudo/
fuente
HTC One m7 con Cyanogenmod 11 nuevo.
El teléfono está conectado por USB y está conectando mi conexión de datos.
Entonces recibo esta sorpresa:
cinder@ultrabook:~/temp/htc_m7/2015-11-11$ adb shell error: insufficient permissions for device cinder@ultrabook:~/temp/htc_m7/2015-11-11$ adb devices List of devices attached ???????????? no permissions
SOLUCIÓN: APAGUE el anclaje a red en el teléfono.
cinder@ultrabook:~/temp/htc_m7/2015-11-11$ adb devices List of devices attached HT36AW908858 device
fuente
Acabo de tener la misma situación, el restablecimiento de datos de fábrica funcionó bien para mí.
fuente