fastboot izin yok - fastboot ve adb çalışmıyor


31

ADB kullanarak Moto telefonumun kilidini açmaya çalışıyorum ancak yaptığım zaman fastboot devicesalıyorum

no permissions   fastboot

sudo fastbootCihazlar bile yardımcı olmuyor

sudo ile bunu anlıyorum sudo: fastboot: command not found

YARDIM ET!!

Yanıtlar:


57

Kullanmayı deneyin sudo $(which fastboot)

Örneğin sudo $(which fastboot) devices

Ayrıca sudo $(which fastboot) oem unlock


İşe yaradı!! Teşekkürler Srinivas ..
Rupali

yardımcı olabilirim sevindim :)
Srinivas Gowda

6
Daha iyi bir çözüm olmalı, güvenli değil ve sadece kök izinleri olan her şeyi çalıştırmak için iyi bir uygulama değil.
elichai2

Does hızlı önyükleme sudo gerektirir?
IgorGanapolsky

25

Burada daha iyi bir çözüm bulundu:
https://stackoverflow.com/a/28127944/1621927

Yorum: Çalıştırmanız gereken her zaman

izinleri zorlamak yerine , sorunu kalıcı olarak düzeltebilirsiniz:sudofastboot

  1. lsusbcihazınızı belirlemek için kullanın USB SatıcıKimliği
  2. yapılandırmak udevcihazınız takıldığında doğru izinlerini ayarlamak için
  3. kar!

Bir bonus olarak - için de sabit olacaktır adb.

Örneğin, benim durumumda ('Megafon SP-A20i' için):

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

Hadi düzeltelim:

İlk önce, cihazı tanımlamamız gerekir:

a) usb veri yolu numarasını arayın (kesmek: cihazın Intel tabanlı olduğunu biliyorum)

$ 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) diğer Intel cihazlarını arayın:

$ 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
$ 

Hub kesinlikle akıllı telefonlar değil, bu yüzden - ihtiyacımız olan USB satıcı kimliği "8087".

İkincisi, configure udev("idVendor" değerini kendininkilerle değiştirmelisin):

$ 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
$ 

Üçüncüsü, udevsihrini gerçekleştirmesi için cihazınızı yeniden takın .

Son kontrol:

$ 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

$ 

İşte bu kadar!


2
En android satıcı kimlikleri iyi listesi var wiki.cyanogenmod.org/w/UDEV
Ehtesh Choudhury


2
Senin sudo udevadm triggerde ihtiyacın olacak .
Jonas G. Drange

"0664" modunu düşünün.
naXa

1
Bu doğru cevap. Aslında, bu tek cevap. Kullanmak sudobir çözüm değildir.
Gaurav Gandhi,

5

Çözümüm

Elichai2 ve bu bağlantı ve liste sayesinde fastboot izin sorunumu çözebildim.

Google Nexus 6P’ye sahibim, bu yüzden Satıcı Kimliği için aşağıdakileri kullandım:

Google - 18d1


51-android.rules

Aşağıdaki komutu kullanırsanız:

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

tam olarak kopyalayın. Ben zaten kökündüm ve bana istenmeyen sonuçlar veren yankı bölümünü kopyalamaya çalıştım. Temel olarak, eğik çizgiyi kaçış karakteri olarak yorumlamak yerine, "" .rules dosyasına koydu.

.Rules dosyasını oluştururken daha önce root kullanıyorsanız aşağıdakileri kullanmanızı öneririz (Satıcı kimliğinizi kullanın).

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


Udev Yeniden Yükleme ve Tetikleme

Uudev kurallarını yeniden yükledim ve daha sonra trigger komutunu verdim. Ayrıca iyi önlem almak için USB'nin fişini çıkardım ve fişi taktım.

udevadm control --reload
udevadm trigger


fastboot

Ayrıcalıklı bir kullanıcı olarak daha sonra koştum:

fastboot devices

ve istendiği gibi çalıştı. Umarım bu izin sorunu ile ilgili sorun yaşayan herkese yardımcı olabilir veya yardımcı olabilir.


Güzel, yorumuma cevap olarak listeye bağlantıyı verdim.
elichai2

udevadmin: komut bulunamadı
IgorGanapolsky

1
@IgorG. Bu kadar geç bir cevap için özür dilerim. Yukarıdaki yazım hatasını düzelttim. "Udevadm" olmalıydı.
Brandon Authier

1

fastboot kullanarak bazı komutlar göndermem gerektiğinde (örneğin htc cihazında firmware yanıp sönüyor) apt kullanarak fastboot yüklüyorum

sudo apt install android-tools-fastboot

o zaman kullanmaya başladığımda ilk komut

sudo -s

Daha sonra bu terminaldeki tüm komutlar, root gönderme komutları gibi çalışacaktır.

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

düzeltmeye ya da bir şeye gerek yok, başlamadan önce basit bir ekstra komut




-1

İlk önce apt'den fastboot'u kurun:

sudo apt install android-tools-fastboot

Ardından sudo ile fastboot komutunu çalıştırın:

sudo fastboot

Benim için çalışıyor.


Fastboot da SDK kazanılmış, ve sadece bir takma ad yolunu ayarlayabilirsiniz .bashrc
IgorGanapolsky
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.