権限がありませんfastboot-fastbootとadbが機能していません


31

私が行うとき、私はADBが、私を使用して、私のモト電話のロックを解除しようとしているfastboot devices私は入れません

no permissions   fastboot

でも、sudo fastbootデバイスが支援していません

須藤で私はこれを得る sudo: fastboot: command not found

助けて!!

回答:


57

使用してみてください sudo $(which fastboot)

例えば sudo $(which fastboot) devices

また sudo $(which fastboot) oem unlock


うまくいった!!
ありがとう

私が助けることができてうれしい:)
Srinivas Gowda

6
より良い解決策がなければなりません。ルート権限ですべてを実行することは安全ではなく、良い習慣でもありません。
elichai2

FASTBOOT 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)他の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

$ 

出来上がり!


2
で、アンドロイドのベンダIDの良いリストがありますwiki.cyanogenmod.org/w/UDEVは
Ehteshチョードリー

3
ここに公式リストがあります:developer.android.com/studio/run/device.html
elichai2

2
あなたsudo udevadm triggerも必要になります。
ジョナスG.ドレンジ

「0664」モードを検討してください。
naXa

1
これは正解です。実際、これが唯一の答えです。使用することsudoは解決策ではありません。
ガウラフガンジー

5

私のソリューション

elichai2とこのリンクとリストのおかげで、fastboot許可の問題を解決できました。

Google Nexus 6Pを持っているので、ベンダーIDに次を使用しました。

Google-18d1


51-android.rules

次のコマンドを使用する場合:

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リロードとトリガー

udevルールをリロードし、トリガーコマンドを発行しました。また、適切な方法でUSBのプラグを抜き差ししました。

udevadm control --reload
udevadm trigger


ファストブート

特権のないユーザーとして、次に実行しました:

fastboot devices

望みどおりに機能しました。これが、アクセス許可の問題で問題が発生した人に役立つか、役立つことを願っています。


いいですね、コメントへの返信としてリストへのリンクを付けました。
elichai2

udevadmin:コマンドが見つかりません
IgorGanapolsky

1
@IgorG。返事が遅くなって申し訳ありません。上記のタイプミスを修正しました。「udevadm」であるはずです。
ブランドンオーティエ

1

fastbootを使用していくつかのコマンドを送信する必要がある場合(たとえば、htcデバイスのファームウェアをフラッシュする)、aptを使用してfastbootをインストールします

sudo apt install android-tools-fastboot

その後、使用を開始すると、最初のコマンドは

sudo -s

この端末のすべてのコマンドは、rootとしてコマンドを送信するように実行されます

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

修正などは必要ありません。開始する前に1つの追加コマンドを実行するだけです。




-1

まず、aptからfastbootをインストールします。

sudo apt install android-tools-fastboot

次に、sudoでfastbootを実行します。

sudo fastboot

わたしにはできる。


FastbootはSDKからも取得でき、.bashrcに
です-IgorGanapolsky
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.