Ubuntu 10.10 64 비트를 실행하고 있습니다. Android Debug Bridge 버전 1.0.26과 함께 ia32-libs가 설치되어 있습니다.
내 문제 :
adb devices
>>> ???????????? 권한 없음sudo adb devices
>>>> sudo : adb : 명령을 찾을 수 없습니다.adb shell
>>> 오류 : 장치에 대한 권한이 부족합니다.
나는 이것들이 모두 관련이 있다고 생각합니다. 관련 정보는 다음과 같습니다.
$ 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
CM6.1을 실행하는 루팅 된 Moto Droid와 CM7 기반 ROM을 실행하는 루팅 된 G-Tab에서 동일한 결과를 얻습니다.
다음 관련 게시물을 검토했습니다.
- http://forum.xda-developers.com/archive/index.php/t-522827.html
- http://ubuntuforums.org/archive/index.php/t-1164359.html
- Linux 환경에서 adb 명령을 찾을 수 없음
대부분의 (전부는 아님) 제안을 시도했지만 문제를 해결할 수 없었습니다. 내가 시도하지 않은 것은 부적절 해 보였다. 몇 가지 팁을 더 주시면 계속 문제를 해결하겠습니다.
내가 시도하지 않은 한 가지는 /etc/udev/rules.d/70-android.rules를 편집하는 것입니다. 그게 문제 일 가능성이 있습니까? “sudo : adb : command not found”가 어떻게 발생하는지 알 수 없습니다. 내 문제가 모두 관련이있는 것은 아닐 수도 있습니다. 어쨌든,이 시점에서 나는 경로 문제가 있거나 다른 게시물에서 논의 된 다른 일반적인 문제가 있다고 믿지 않기 때문에 다른 사람들의 의견이 필요하다고 생각합니다.
편집 : EboMike 및 RivieraKid 덕분에 해결 되었습니다. 이것은 실제로 두 가지 다른 문제였습니다.
-
위의 항목 # 2 (sudo : adb : command not found)는 다음과 같이 심볼릭 링크를 만들어 해결되었습니다.
$ sudo ln -s /opt/android-sdk-linux_x86/platform-tools/adb /usr/local/sbin/adb
그러면 EboMike가 제안한대로이 솔루션을 사용할 수 있었습니다. 내 Moto Droid에 필요했습니다. ( 그러나 내 Viewsonic G-Tablet에는 adb를 sudo로 실행할 필요 가 없습니다 .)
-
다른 두 항목은 RivieraKid가 제안한대로 udev 규칙을 구현하여 해결되었습니다 (이 링크에서 ).
답변
내가 시도하지 않은 한 가지는 /etc/udev/rules.d/70-android.rules를 편집하는 것입니다. 그게 문제 일 가능성이 있습니까?
그렇게하지 않은 특별한 이유가 있습니까? 질문에 답하려면-예! udev 규칙은 Ubuntu에 장치가 무엇인지 알려주고 사용자 공간 도구가 장치에 액세스 할 수 있도록합니다.
지침 을 올바르게 따르지 않으면 adb를 사용할 수 없습니다 .
그러나이를 염두에두고 사용중인 Ubuntu 버전을 말하지 않지만 10.10에 문제가 있습니다. 규칙 파일의 내용을 게시해야하는 경우 알려주세요.
sudo를 통해 adb를 실행하는 것에 대해 걱정하지 마십시오. 필요하지 않습니다. MODE="0666"
udev에 규칙에서 당신이 어떤 사용자로 장치에 액세스 할 수 있습니다.
편집하다:
규칙을 다시로드하는 것을 잊지 마십시오.
sudo udevadm control --reload-rules
# 2 수정 :
@Jesse Glick이 올바르게 지적했듯이 adb가 이미 데몬 모드에서 실행중인 경우이 작업을 위해 다시 시작해야합니다.
sudo adb kill-server
나는 여기서 sudo를 사용했는데, 그 이유는 adb가 죽을 것이라는 것을 보장하기 때문이며, 공식적으로 서버를 중지하기 위해 지원되는 방법입니다. 다음에 adb를 사용할 때 자동으로 다시 시작되지만 이번에는 올바른 환경으로 다시 시작됩니다.
답변
adb 서버를 루트로 다시 시작해야합니다. 를 참조하십시오 여기 .
답변
Gentoo / Funtoo 리눅스 시스템에서 비슷한 문제가 있습니다 :
항상 올바른 장치 설명이 아니고 권한이 충분하지 않습니다.
# sudo ./adb devices
List of devices attached
???????????? no permissions
# ./adb usb
error: insufficient permissions for device
나를 위해 Google 의 하우투 를 돕습니다 . 제 경우에는 udev 규칙을 추가해야했습니다.
# cat /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
및 파일 시스템 권한 설정
# chmod a+r /etc/udev/rules.d/51-android.rules
내 스마트 폰을 다시 연결 한 후 전화에 대한 액세스가 성공적으로 이루어졌으며 이제 Eclipse의 Android Device Chooser에도 나타납니다.
# sudo ./adb devices
List of devices attached
3XXXXXXXXXXXXXC device
# sudo ./adb usb
restarting in USB mode
또한 plugdev 그룹 에 대한 사용자의 멤버십을 확인해야합니다 .
답변
내가 읽은 모든 대답은 SUBSYSTEM=="usb"
. 그러나 내 (아마도 고대의) udev는 이것을 DRIVER=="usb"
. 마침내 루트가 아닌 사용자로 adb 서버를 실행할 수 있습니다 … yay.
udevmonitor –env의 출력과 다음의 출력을 보는 것이 도움이 될 수 있습니다.
udevinfo -a -p <DEVICE_PATH_AS_REPORTED_BY-udevmonitor>
답변
IntelliJ IDEA 와 같은 IDE 는 자체 adb-server를 시작하는 경향이 있습니다.
서버를 수동으로 종료하고 sudo로 새 인스턴스를 실행하더라도 IDE가 서버 자체를 종료 할 때까지 도움이되지 않습니다.
답변
루트로 adb 서버를 다시 시작하면 나를 위해 일했습니다. 보다:
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
답변
시스템 규칙을 덮어 써서 데비안 GNU / 리눅스 시스템에서이 문제를 해결했습니다.
mv /etc/udev/rules.d/51-android.rules /etc/udev/rules.d/99-android.rules
http://rootzwiki.com/topic/258-udev-rules-for-any-device-no-more-starting-adb-with-sudo/에 링크 된 파일의 콘텐츠를 사용했습니다.
