fastboot ne fonctionne pas sur mon Nexus 4

8

J'essaie de rooter mon N4, et fastboot ne semble pas fonctionner. L'exécuter sous linux, et le binaire fastboot semble fonctionner.

'Fastboot devices' produit des informations sur mon appareil, mais 'fastboot oem unlock' fait juste écho à '...' et se bloque. Je ne reçois pas d'invite au téléphone concernant le déverrouillage. Il se bloque jusqu'à ce que je redémarre le chargeur de démarrage, auquel point fastboot fait écho "ÉCHEC (l'écriture de la commande a échoué (impossible d'envoyer après l'arrêt du point de terminaison du transport)")

Les autres commandes fastboot ne semblent pas fonctionner non plus. 'fastboot reboot' fait écho à 'rebooter ...' mais alors rien ne se passe.

J'ai essayé ceci avec et sans le débogage USB activé. Des idées?

Je commence à penser que le (s) port (s) USB de ma machine est peut-être grillé. Ce matin, la machine n'a pas reconnu d'iPod branché sous Windows sur les ports USB avant ou arrière de ma machine. Je travaille sur le téléphone sous Linux, et / var / adm / messages montre que quelque chose se passe lorsque je branche l'appareil. Je suppose que les 'appareils à démarrage rapide' n'accèdent pas de manière acutale à l'appareil - regarde simplement les types d'appareils détectés par le système d'exploitation lorsque vous l'avez branché, non? Est-il possible que je puisse lire depuis le port USB mais que je ne peux pas y écrire?

Eh bien, il semble que ce soit mes ports USB. J'ai trouvé un vieil ordinateur portable, l'ai démarré sur un CD live Ubuntu et j'ai pu rooter le téléphone à partir de là. Désolé pour tout le drame. Bizarre que mes ports USB soient morts juste à ce moment, mais à bien y penser, ils ont été lents récemment - gPodder avait pris des minutes pour copier des podcasts sur mon iPod. Je suppose que ce fut un échec progressif.

littlenoodles
la source
Essayez d'exécuter fastboot en tant que root (appareils sudo fastboot)
Liam W
Non, sudo n'aide pas. Pour ce que ça vaut, j'ai fait une queue -f sur / var / log / messages quand j'ai démarré le chargeur de démarrage. Sortie ci-dessous, se terminant par le numéro de série, qui correspond à ce que les «périphériques de démarrage rapide» impriment.
littlenoodles
Le fichier / var / log / messages est trop long pour être saisi ici. Mais il essaie essentiellement et ne parvient pas à le détecter comme un périphérique USB 3-5, puis essaie comme USB 2-2 et réussit.
littlenoodles
localhost klogd: usb 2-2: nouveau périphérique USB pleine vitesse utilisant ohci_hcd et l'adresse 6 localhost klogd: usb 2-2: nouveau périphérique USB trouvé, idVendor = 18d1, idProduct = 4ee0 localhost klogd: usb 2-2: nouvelles chaînes de périphérique USB : Mfr = 1, Product = 2, SerialNumber = 3 localhost klogd: usb 2-2: Product: Android localhost klogd: usb 2-2: Fabricant: Google localhost klogd: usb 2-2: SerialNumber: 006ef4fae094444f
littlenoodles
Encore une chose (étrange?). J'ai essayé de sélectionner la récupération à partir du chargeur de démarrage, et il est allé à un écran de récupération figé avec le message "aucune commande trouvée". C'est effrayant? De là, j'ai pu revenir au chargeur de démarrage avec le combo vol-down, power.
littlenoodles

Réponses:

5

L'indice réside dans le commentaire ci-dessus Mais je viens d'essayer «adb reboot bootloader», et cela a fonctionné. ce qui montre que adbc'est bien reconnaître la connexion USB, mais pas en mode de démarrage rapide qui est là où cette réponse intervient ...

On dirait que la règle udev pour le démarrage rapide est absente!

Faites ceci: lsusbavec le câble branché alors que le combiné est en mode de démarrage rapide.

La sortie typique doit être similaire à celle-ci:

Bus 001 Périphérique 012: ID 18d1: d00d Google Inc.

                     ^^^^ ^^^^

L'identifiant des nombres 18d1:d00dcorrespond à idVendor : idProduct respectivement.

Prenez-en note et vérifiez vos règles udev dans /etc/udev/rules.d/51-android-rules. (Le kilométrage variera légèrement en fonction des différentes distributions Linux! )

Si vous n'avez pas ce fichier, il est recommandé d'en créer un en utilisant root, il peut y avoir quelques règles qui doivent être ajoutées en fonction du mode du combiné, c'est-à-dire les modes normal, récupération et chargeur de démarrage.

Voici un exemple du mien, qui a des valeurs différentes respectivement lorsque le combiné est dans l'un de ces modes. Prenez-le comme modèle et modifiez les numéros comme indiqué, qui correspondent respectivement à idVendor et idProduct en fonction de votre marque / modèle de combiné.

SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1354", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1350", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1351", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="d00d", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"

L'ID utilisateur est ajouté au androiddevgroupe, qui a été créé à l'occasion précédente , de cette façon, je n'ai pas sudodu tout à le faire!

Pour créer un groupe, en utilisant root

  1. groupadd androiddev, cela crée un groupe, puis pour ajouter l'ID utilisateur de votre linux à ce groupe ...
  2. usermod -a -G androiddev your_user_id; remplacez votre_utilisateur_id par votre propre ID utilisateur utilisé pour vous connecter).

Ensuite, en mode de démarrage rapide, le binaire fastboot devrait fonctionner (bonus! Sans que cela sudosoit nécessaire !)

t0mm13b
la source