回答:
使用してみてください 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
$
出来上がり!
sudo udevadm trigger
も必要になります。
sudo
は解決策ではありません。
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
この端末のすべてのコマンドは、rootとしてコマンドを送信するように実行されます
fastboot devices
fastboot reboot-bootloader
fastboot oem rebootRUU
fastboot flash zip xxxx.zip
修正などは必要ありません。開始する前に1つの追加コマンドを実行するだけです。
または、すべてのudevルールを追加できます。LinuxのAndroid USBベンダーIDルールのフルセット https://gist.github.com/jdamcd/6054951#file-51-android-rules
まず、aptからfastbootをインストールします。
sudo apt install android-tools-fastboot
次に、sudoでfastbootを実行します。
sudo fastboot
わたしにはできる。