APK 파일을 태블릿에 푸시하려고 할 때이 오류가 발생했습니다. 도와주세요.
adb server is out of date. killing...
* daemon started successfully *
error: insufficient permissions for device.
도움을 주셔서 감사합니다.
APK 파일을 태블릿에 푸시하려고 할 때이 오류가 발생했습니다. 도와주세요.
adb server is out of date. killing...
* daemon started successfully *
error: insufficient permissions for device.
도움을 주셔서 감사합니다.
답변:
우분투에서 때때로이 같은 오류를 보았습니다. 이에 대한 해결 방법은 sudo
명령으로 adb를 실행하는 것입니다. 예를 들어, app.apk
sdcard를 누르면 명령은 다음과 같습니다.
sudo adb push app.apk /mnt/sdcard
또한 응용 프로그램 설정 (GingerBread) 또는 개발 섹션 (IceCream Sandwich 이상)에서 "USB 디버깅"모드를 선택했는지 확인하십시오. adb가 이미 실행중인 경우 먼저 다음 명령으로 종료해야합니다.sudo adb kill-server
이것이 도움이되기를 바랍니다.
sudo
설치 adb
되지 않은 버전과 다른 버전을 찾았 기 때문에 저에게 효과적 이었습니다 . 그렇기 때문에 adb
더 많은 권한이 필요 하지 않기 때문에 이것이 작동 합니다.
나는이 같은 문제에 부딪쳤다. 여기에 표시된대로 udev 규칙을 추가 하면 트릭이 수행됩니다.
루트로 로그인하고 파일을 작성하고 다음 /etc/udev/rules.d/51-android.rules
과 같은 행을 추가하여 plugdev
그룹의 모든 사용자에게 권한을 부여하십시오 .
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
이 예에서 공급 업체 ID는 HTC입니다. 장치의 공급 업체 ID를 사용해야합니다. 장치 ID는 다음 lsusb
과 같은 줄 을 실행 하여 검색 하여 얻을 수 있습니다.
Bus 002 Device 009: ID 2a47:9e18
이 예에서는 공급 업체 ID가 2a47
이므로로 교체 0bb4
해야 2a47
합니다. 따라서 올바른 줄은 다음과 같습니다.
SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev"
이제 파일에 대한 읽기 권한을 할당하고 udev를 다시로드하고 adb 데몬을 다시로드하십시오.
sudo chmod a+r /etc/udev/rules.d/51-android.rules
sudo udevadm control --reload-rules
adb kill-server
adb start-server
장치를 USB 포트에서 분리했다가 다시 연결해야 할 수도 있습니다.
plugdev
그룹의 일부 여야합니다 . id
찾아 실행하십시오 .
StackOverflow에 대한 Jorch914의 답변 으로이 문제가 해결되었습니다.
Ok 그래서 마침내 문제를 발견했습니다.이 장치에서 분명히 카메라로 연결하도록 설정해야합니다 (USB 디버깅이 이미 활성화 된 후에도)
또한 이 링크 는 설정 과정을 설명합니다
adb shell ls
.
방금 같은 문제를 겪었지만 여기에 내가 어떻게 통과 할 수 있었습니까?
adb kill-server
(잘못 될 수 있지만 sudo없이 AND로 발행했습니다sudo adb start-server
당신이 알고 있는지 확실하지 않지만 adb를 포함하는 패키지가 있습니다. 나는 당신이 이전 버전의 adb에 대한 참조를 얻고 있음을 알았 기 때문에 이것을 언급했다. 명령 행에서 다음을 발행하여 설치할 수 있습니다.sudo apt-get install android-tools-adb
이게 도움이 되길 바란다.
몇 분 전에 예상대로 작동 insufficient permissions for device
했지만 오늘 오류 가 발생했습니다 adb
. 이제 나는 얻는다 :
$ adb devices
List of devices attached
???????????? no permissions
$ adb shell
error: insufficient permissions for device
오류가 발생하기 직전 Media device (MTP)
에 사용할 필요가 없다는 것을 알았으므로 비활성화했습니다 MTP
. 그러나 USB 디버깅 또는 적어도 일부 adb
명령에는이 기능 Media device (MTP)
이 활성화되어 있어야합니다 .
Media device (MTP)
Android 4.4에서 사용하려면 다음으로 이동하십시오.
Settings
Storage
The "..." menu (in the upper right corner)
USB computer connection
Media device (MTP)
MTP
비활성화 되면 lsusb
다음을 보여줍니다.
Bus 002 Device 071: ID [idVendor1]:[idProduct1] Google Inc.
을 활성화 한 후 MTP
lsusb는 다음을 보여줍니다.
Bus 002 Device 072: ID [idVendor2]:[idProduct2] [idVendor string]
idVendor 및 idProduct MTP
는 활성화 또는 비활성화 여부에 따라 변경 됩니다.
저는 Android 전문가가 아니므로 위의 동작이 특정 전화 모델에만 해당 될 수 있습니다.
다른 이유로 인한 것일 수 있습니다. 장치에 APK를 설치하려고하면이 오류가 발생합니다.
$ adb install platforms/android/build/outputs/apk/android-armv7-release.apk
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
error: insufficient permissions for device
- waiting for device -
장치가 올바른 모드로 준비되지 않았기 때문에 발생했습니다. 이 장치는 USB를 통해 4G 연결을 공유하고있었습니다.
다음과 같이 알 수 있습니다.
$ adb devices -l
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
33332EF19F3D00EC no permissions usb:1-1.2
따라서 전화에서 연결 공유를 비활성화하고 다시 시작하기에 충분했습니다.
일반적으로 adb device
장치에서 파일을 푸시하기 전에 명령을 통해 다음 결과를 확인하십시오
$ adb devices -l
List of devices attached
33332EF19F3D00EC device usb:1-1.2
이 경우 adb 서버를 종료하거나 다시 시작할 필요가 없습니다.
USB를 통한 데이터 전송을 위해 장치를 장착 한 경우에도 같은 상황 일 수 있습니다.
나는 같은 문제에 직면했고 your_android_sdk_path의 경로를 환경 변수에 추가하여 이것을 해결했다.
sudo export $PATH:/your_android_sdk_path/platform-tools/adb
이 파일 ~/.bashrc
파일 을 편집 ~/.profile
하거나
/etc/profile, /etc/bash.bashrc, or /etc/environment
시스템 전체 액세스에 추가하려는 경우 계정이나 시스템 전체에 추가하려는 방법을 원합니다 .
그런 다음 bin에 링크를 만듭니다.
sudo ln -s /your_android_sdk_path/platform-tools/adb /bin/adb
adb 장치 또는 명령을 사용한 경우 먼저 다음과 같이 서버를 종료하십시오.
adb kill-server
그런 다음 서버를 시작하십시오
adb start-server
adb devices
이제 문제없이 장치가 올바르게 표시되는 것을 볼 수 있습니다
이 문제에 대한 답변은 여기에 있습니다 : https://github.com/snowdream/51-android
안드로이드 개발자로서 나는 당신이 어디서나 adb를 사용하도록 강요하기 위해 "sudo"를 사용하지 말 것을 제안한다. 우리가해야 할 일이 아닙니다. 우리 자신의 안전을 위해 규칙, 정책 및 제한이 있습니다.