ADBを使用してMoto電話のロックを解除しようとしていますが、fastboot devices
を実行すると
no permissions fastboot
Sudo fastboot
デバイスでも役に立たない
sudoでこれを取得するSudo: fastboot: command not found
助けて!!
Sudo $(which fastboot)
を使用してみてください
たとえば、Sudo $(which fastboot) devices
Sudo $(which fastboot) oem unlock
も
ここでより良い解決策を見つけました:
https://stackoverflow.com/a/28127944/1621927
コメントは次のとおりです。Sudo
を実行する必要があるたびにfastboot
を介して許可を強制する代わりに、問題を永続的に修正できます。
lsusb
を使用して、デバイスのUSB VendorIDを識別しますudev
を設定して、デバイスが接続されたときに適切な権限を設定しますボーナスとして-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)他のIntelデバイスを探します:
$ 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
$
出来上がり!
Elichai2とこれのおかげで リンクとリスト fastboot許可の問題を解決することができました。
Google Nexus 6Pを持っているので、ベンダーIDに次を使用しました。
Google-18d1
次のコマンドを使用する場合:
Sudo sh -c "echo 'SUBSYSTEM==\"usb\", ATTR{idVendor}==\"8087\" ..."
正確にコピーします。私はすでにルートであり、望ましくない結果をもたらしたエコー部分のみをコピーしようとしました。基本的に、スラッシュをエスケープ文字として解釈するのではなく、\ "を.rulesファイルに入れます。
既にrootで.rulesファイルを作成している場合(ベンダーIDを使用)、以下を使用することをお勧めします。
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"' >> /etc/udev/rules.d/51-Android.rules
Udevルールをリロードし、トリガーコマンドを発行しました。また、適切な方法でUSBのプラグを抜き差ししました。
udevadm control --reload
udevadm trigger
特権のないユーザーとして、次に実行しました:
fastboot devices
望みどおりに機能しました。これが、アクセス許可の問題で問題が発生した人に役立つか、役立つことを願っています。
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
わたしにはできる。
または、すべてのudevルールを追加できます。LinuxのAndroid USBベンダーIDルールのフルセット https://Gist.github.com/jdamcd/6054951#file-51-Android-rules