Comprendre Android : fastboot, recovery, TWRP et bootloader

Introduction :

J’en ai vite parlé dans mon article sur Magisk, mais je vais essayer de parler du sujet un peu plus en profondeur. Vous avez sûrement dû vous poser des questions, comme qu’est-ce qu’un bootloader ? Pourquoi est-il verrouillé ? Pourquoi installer TWRP ? Qu’est-ce que le recovery ou fastboot ? Plongeons dans l’univers Android pour essayer de mieux comprendre ses termes et leurs utilités !

Fastboot :

Dans Android, fastboot est un protocole spécial de diagnostic et d’ingénierie dans lequel vous pouvez démarrer votre appareil. Pendant le démarrage rapide, vous pouvez modifier les images du système de fichiers à partir d’un ordinateur via une connexion USB. Il s’agit d’un mode pratique pour installer une ROM custom depuis un PC. C’est également en mode fastboot que vous pouvez flasher un recovery custom. Ce qui nous amène au point suivant.

Figure 1 : le mode fastboot d’un Xiaomi.

Recovery :

Dans Android, le recovery se réfère à la partition bootable dédiée sur laquelle la console de récupération est installée. Une combinaison de touches fera démarrer votre téléphone en recovery, où vous pourrez trouver des outils pour aider à réparer votre installation ainsi qu’à installer les mises à jours officielles du système d’exploitation. Parce que Android est ouvert et a le code source du recovery disponible, la construction d’une version personnalisée avec plus et différentes options est relativement facile ainsi. Le recovery d’Android stock (comprendre la version la plus pure, sans modifications constructeurs, tel que distribué par Google) est plutôt limité, mais on peut facilement en changer, pour le plus connu par exemple, TWRP.

Figure 2 : le recovery d’un Xiaomi

TWRP :

Comme un peu annoncé plus haut, TWRP est un recovery custom. C’est l’une des alternatives à celui d’Android stock les plus connues, aboutit et utilisée. TWRP est un projet communautaire open source. Son développement est effectué par environ 4 personnes. Ils ont aussi une grande communauté de soutien avec beaucoup de gens qui sont prêts à répondre aux questions et à aider les gens avec leurs appareils.

Un peu d’histoire maintenant, TWRP a été formé à l’origine pour travailler sur le portage du WiMAX sur CM7 pour le HTC EVO 4G. Après leur travail sur l’EVO 4G, ils voulaient travailler sur un projet qui fonctionnerait sur plus d’appareils que l’EVO 4G et ils ont décidé de travailler sur un recovery. Aujourd’hui, TWRP est le leader du recovery sur mesure pour les téléphones Android. La liste des appareils compatibles peut être trouvée sur le site officiel. Pour installer un recovery custom, il faut que votre bootloader soit déverrouillé, ce qui peut parfois être le cas par défaut sur certains appareils. Sinon, il va falloir regarder les démarches à faire au près de votre constructeur.

Figure 3 : TWRP

Le bootloader :

A son niveau le plus basique, le stockage sur votre smartphone Android est comme un disque dur, composé de plusieurs partitions. L’une de ces partitions contient les fichiers système Android, une autre contient toutes les données de l’application que vous accumulez (ce qui vous permet généralement de mettre à jour sans perdre toutes vos données), et d’autres pour faire plus de choses dans les coulisses. Le bootloader est la racine même de toutes les modifications liées au système.

Par défaut, il peut être à vérrouillé (avec possibilité de le déverrouiller manuellement ou par mise à jour, cela va dépendre des constructeurs) ou déverrouillé, mais ce qui est rarement le cas (sauf avec Google et ses Nexus à l’époque). La plupart des marques n’autorisent pas la modification du bootloader, il est donc préférable d’attendre la fin de la garantie.

Exemple :

Hier soir, j’ai voulu changer de ROM Android (je ferais un article sur le sujet ne vous inquiétez pas). J’étais sur une MIUI 9 Developer (en opposition à la stable) prise sur le site de Xiaomi. Je suis passé à une MIUI 10 en weekly (ROM beta comme la Developer) de chez xiaomi.eu. Juste après ça, j’ai installé Magisk. Jusque là, tout va bien. Sauf qu’après, j’ai voulu installer un module Magisk (qui s’est révélé ne pas être compatible avec MIUI 10). J’ai installé le module, aucune erreur. Je redémarre, et là ! C’est le drame ! Plus sérieusement, mon téléphone démarrait, mais restait sur l’animation de démarrage.

Mais alors ? Comment régler le soucis ? Que faire s’il m’arrive la même chose ?

Et bien, la première chose à essayer est de forcer l’arrêt du téléphone (boutons power + volume up + volume down sur les Xiaomi mais la combinaison ne doit pas vraiment être différente sur d’autres marques). Une fois le téléphone éteint, il faut essayer d’accéder au recovery.

Dans mon cas, je ne pouvais pas, parce que j’avais changé quelques trucs dans TWRP et il était devenu inaccessible. Et c’est là que fastboot intervient ! J’ai donc démarré en fastboot (boutons power + volume down), téléchargé un TWRP pour mon téléphone sur un PC, flashé TWRP depuis le PC via fastboot et éteint le téléphone.

Il m’a ensuite fallu démarrer en recovery (power + volume up), flasher la ROM (il vaut mieux garder le ZIP de la ROM sur votre téléphone au cas où), effacer le cache et Dalvik.

Je n’ai perdu aucune données, vu que seul la partition /boot était défaillante. J’avais donc à nouveau MIUI 10, en utilisant fastboot et le recovery.

Conclusion :

Fastboot est donc un moyen d’avoir une interface entre votre PC et Android (via USB) pour avoir accès à certaines commandes (flash de ROM, changement de bootloader, …). Le Recovery permet de formater le système si vous n’avez plus accès, installer des mises à jour système, … TWRP est un recovery custom, qui apporte des fonctionnalités en plus de celles d’Android stock. Enfin, le bootloader est la partie qui permet de modifier le système et qui l’autorise ou non.

Author: Sélénuix

Je suis Sélénuix, un passionné du web et du numérique, mais du libre en particulier. J’ai tourné sous différentes distributions GNU/Linux.