Réponses:
Essayez d'utiliser sudo $(which fastboot)
par exemple sudo $(which fastboot) devices
également sudo $(which fastboot) oem unlock
Trouvé une meilleure solution ici:
https://stackoverflow.com/a/28127944/1621927
Voici le commentaire:
Au lieu de forcer les autorisations via sudo
chaque fois que vous devez exécuter fastboot
, vous pouvez résoudre définitivement le problème:
lsusb
pour identifier votre appareil USB VendorIDudev
pour définir les autorisations appropriées lorsque votre appareil est branchéEn bonus - il sera fixé pour adb
.
Par exemple, dans mon cas (pour «Megafon SP-A20i»):
$ fastboot devices
no permissions fastboot
$ sudo fastboot devices
[sudo] password for kaa:
MedfieldA9055F28 fastboot
$
Corrigeons:
Tout d'abord, nous devons identifier l'appareil:
a) recherchez le numéro de bus USB (piratage: je sais que l'appareil est basé sur 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) recherchez d'autres appareils 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
$
Les concentrateurs ne sont pas vraiment des smartphones, donc - l'ID du fournisseur USB dont nous avons besoin est "8087".
Ensuite, configurez udev
(vous devez remplacer la valeur "idVendor" par la vôtre):
$ 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
$
Troisièmement, rebranchez votre appareil pour permettre udev
d'effectuer sa magie.
Vérification finale:
$ 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
$
Voila!
sudo udevadm trigger
.
sudo
n'est pas une solution.
Grâce à elichai2 et à ce lien et à cette liste, j'ai pu résoudre mon problème d'autorisation de démarrage rapide .
J'ai le Google Nexus 6P, j'ai donc utilisé ce qui suit pour mon ID de fournisseur:
Google - 18d1
Si vous utilisez la commande suivante:
sudo sh -c "echo 'SUBSYSTEM==\"usb\", ATTR{idVendor}==\"8087\" ..."
copiez-le exactement. J'étais déjà root et j'ai essayé de copier uniquement la partie d'écho qui m'a donné des résultats indésirables. Fondamentalement, il place le \ "dans le fichier .rules plutôt que d'interpréter la barre oblique comme le caractère d'échappement.
Je suggère d'utiliser ce qui suit si vous créez déjà le fichier .rules en tant que root (utilisez votre ID de fournisseur).
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"' >> /etc/udev/rules.d/51-android.rules
J'ai rechargé les règles udev, puis j'ai lancé la commande de déclenchement. J'ai également débranché et branché l'USB pour faire bonne mesure.
udevadm control --reload
udevadm trigger
En tant qu'utilisateur non privilégié, j'ai ensuite couru:
fastboot devices
et cela a fonctionné comme souhaité. J'espère que cela peut être utile ou utile à quiconque éprouve des problèmes avec le problème des autorisations.
quand j'ai besoin d'envoyer des commandes en utilisant fastboot (firmware clignotant sur un appareil htc par exemple) j'installe fastboot en utilisant apt
sudo apt install android-tools-fastboot
puis quand je commence à l'utiliser, la première commande est
sudo -s
toutes les commandes de ce terminal s'exécuteront en tant que commandes d'envoi racine comme
fastboot devices
fastboot reboot-bootloader
fastboot oem rebootRUU
fastboot flash zip xxxx.zip
pas besoin de correction ou quelque chose, c'est simple une commande supplémentaire avant de le démarrer
Ou vous pouvez ajouter toutes les règles udev: ensemble complet de règles d'ID de fournisseur USB Android pour Linux https://gist.github.com/jdamcd/6054951#file-51-android-rules
Installez d'abord fastboot depuis apt:
sudo apt install android-tools-fastboot
Exécutez ensuite fastboot avec sudo:
sudo fastboot
Ça marche pour moi.