권한 없음 fastboot-fastboot 및 adb가 작동하지 않습니다


31

ADB를 사용하여 Moto 전화의 잠금을 해제하려고하는데, fastboot devices계속 할 때 계속

no permissions   fastboot

sudo fastboot장치 조차도 도움이되지 않습니다

sudo와 함께 나는 이것을 얻는다. sudo: fastboot: command not found

도움!!

답변:


57

사용해보십시오 sudo $(which fastboot)

예를 들어 sudo $(which fastboot) devices

또한 sudo $(which fastboot) oem unlock


효과가 있었다 !! 감사합니다 Srinivas ..
Rupali

다행 나는 :) 도움이 될 수
스 리니 바스 Gowda에게

6
더 나은 솔루션이 있어야합니다. 루트 권한으로 모든 것을 실행하는 것이 안전하지 않으며 좋은 습관이 아닙니다.
elichai2

패스트 부트 에는 sudo가 필요 합니까 ?
IgorGanapolsky

25

https://stackoverflow.com/a/28127944/1621927 에서 더 나은 솔루션을 찾았습니다.

주석은 다음과 같습니다. 실행할 때마다

권한을 강요하는 대신 문제를 영구적으로 해결할 수 있습니다.sudofastboot

  1. lsusb장치 USB VendorID를 식별하는 데 사용
  2. udev장치가 연결되어있을 때 적절한 권한을 설정 하도록 구성
  3. 이익!

보너스로도 고정됩니다 adb.

예를 들어, 제 경우에는 ( 'Megafon SP-A20i'의 경우) :

$ fastboot devices
no permissions  fastboot
$ sudo fastboot devices
[sudo] password for kaa: 
MedfieldA9055F28    fastboot
$ 

수정하자 :

먼저 장치를 식별해야합니다.

a) usb 버스 번호를 찾으십시오 (해킹 : 장치가 Intel 기반임을 알고 있습니다)

$ fastboot -l devices
no permissions         fastboot usb:1-1.2
$ lsusb |grep 001 |grep -i intel
Bus 001 Device 044: ID 8087:09ef Intel Corp. 
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
$ 

b) 다른 인텔 장치를 찾으십시오.

$ lsusb |grep 8087
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 044: ID 8087:09ef Intel Corp. 
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
$ 

허브는 명확하게 스마트 폰이 아니므로 필요한 USB 공급 업체 ID는 "8087"입니다.

둘째, 구성하십시오 udev( "idVendor"값을 사용자 값으로 바꿔야합니다).

$ sudo sh -c "echo '# Megafon SP-A20i' >> /etc/udev/rules.d/51-android.rules"
$ sudo sh -c "echo 'SUBSYSTEM==\"usb\", ATTR{idVendor}==\"8087\", MODE=\"0666\", GROUP=\"plugdev\"' >> /etc/udev/rules.d/51-android.rules"
$ sudo service udev restart
udev stop/waiting
udev  start/running, process 1821
$ 

셋째, udev마법을 수행 할 수 있도록 장치를 다시 연결하십시오 .

최종 점검 :

$ fastboot -l devices
MedfieldA9055F28       fastboot usb:1-1.2
$ adb devices
List of devices attached 

$ fastboot reboot
rebooting...

finished. total time: 0.253s
$ sleep 90
$ adb devices
List of devices attached 
MedfieldA9055F28    device

$ 

짜잔!


2
안드로이드 공급 업체 ID의 좋은 목록있다 wiki.cyanogenmod.org/w/UDEV은
Ehtesh Choudhury의

3
공식적인 목록이 여기 있습니다 : developer.android.com/studio/run/device.html
elichai2

2
당신도 필요 sudo udevadm trigger합니다.
Jonas G. Drange

"0664"모드를 고려하십시오.
naXa

1
이것이 정답입니다. 실제로 이것이 유일한 답입니다. 사용 sudo은 해결책이 아닙니다.
Gaurav Gandhi

5

내 솔루션

elichai2와이 링크 및 목록 덕분에 빠른 부팅 권한 문제를 해결할 수있었습니다.

Google Nexus 6P를 보유하고 있으므로 공급 업체 ID에 다음을 사용했습니다.

구글-18d1


51- 안드로이드 규칙

다음 명령을 사용하는 경우 :

sudo sh -c "echo 'SUBSYSTEM==\"usb\", ATTR{idVendor}==\"8087\" ..."

정확하게 복사하십시오. 나는 이미 뿌리를 내렸고 에코 부분 만 복사하려고 시도했는데 결과가 나에게 좋지 않았다. 기본적으로 슬래시를 이스케이프 문자로 해석하지 않고 .rules 파일에 \ "를 넣습니다.

.rules 파일을 루트로 작성 (공급 업체 ID 사용)하면 이미 다음을 사용하는 것이 좋습니다.

echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"' >> /etc/udev/rules.d/51-android.rules


Udev 재로드 및 트리거

udev 규칙을 다시로드 한 후 트리거 명령을 발행했습니다. 나는 또한 좋은 측정을 위해 USB를 뽑았다가 꽂았다.

udevadm control --reload
udevadm trigger


패스트 부트

권한이없는 사용자로서 나는 다음을 실행했다.

fastboot devices

원하는대로 작동했습니다. 나는 이것이 권한 문제로 어려움을 겪는 사람에게 유용하거나 도움이되기를 바랍니다.


좋아, 나는 내 의견에 대한 답변으로 목록에 대한 링크를 주었다.
elichai2

udevadmin : 명령을 찾을 수 없습니다
IgorGanapolsky

1
@IgorG. 답변이 늦어진 것에 대해 사과드립니다. 위의 오타를 수정했습니다. "udevadm"이었어 야합니다.
Brandon Authier

1

fastboot를 사용하여 일부 명령을 보내야 할 때 (예를 들어 htc 장치에서 펌웨어 깜박임) apt를 사용하여 fastboot를 설치합니다

sudo apt install android-tools-fastboot

그런 다음 사용을 시작하면 첫 번째 명령은

sudo -s

이 터미널의 모든 명령은 다음과 같은 루트 전송 명령으로 실행됩니다

fastboot devices
fastboot reboot-bootloader 
fastboot oem rebootRUU 
fastboot flash zip xxxx.zip

수정이나 무언가가 필요하지 않습니다. 시작하기 전에 하나의 추가 명령입니다.




-1

먼저 apt에서 fastboot를 설치하십시오.

sudo apt install android-tools-fastboot

다음 sudo를 사용하여 fastboot를 실행하십시오.

sudo fastboot

그것은 나를 위해 작동합니다.


SDK에서 Fastboot를 구할 수도 있으며 .bashrc에
IgorGanapolsky
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.