Je suis dans le processus de mise en place d'un dispositif non officiel, et je suis bloqué, incapable de progresser à cause d'Android Verified Boot. Selon les spécifications, Android Verified Boot peut être désactivé avec l'option suivante --disable-verity
y --disable-verification
drapeaux. L'appareil avec lequel je travaille n'est pas conforme aux spécifications et ne peut donc pas désactiver Android Verified Boot. L'une des solutions est de construire moi-même une image vbmeta qui sera ensuite utilisée pour vérifier mon image de démarrage personnalisée. La question qui se pose est de savoir comment générer correctement une telle image. La documentation sur le sujet est extrêmement rare et la recherche de fichiers similaires créés par la communauté avec un éditeur hexadécimal ne m'apporte que peu d'informations. Comme mentionné ici Je devrais être capable d'en générer un avec l'avbtool, ce que j'ai fait, très probablement à tort, car il refuse toujours de le flasher via fastboot. Le seul moyen que j'ai trouvé pour permettre une telle chose est de flasher une image vbmeta vierge, qui à terme ne vérifie pas le noyau et échoue.
Réponse
Trop de publicités?Dans cette page il y a une section appelée 'Disabling verified boot' qui mentionne une commande pour créer un vbmeta.img vide qui peut être utilisé pour désactiver le démarrage vérifié : https://wiki.postmarketos.org/wiki/Android_Verified_Boot_(AVB)
Cette commande est,
$ avbtool make_vbmeta_image --flags 2 --padding_size 4096 --output vbmeta_disabled.img
Pour s'en assurer, j'ai cherché 'make_vbmeta_image' dans les dépôts AOSP et j'ai trouvé une commande similaire dans aquí .
J'ai un arbre source Android Q AOSP avec moi. J'ai donc utilisé avbtool pour créer une image vbmeta vide en envoyant les commandes suivantes.
$ cd <aosp_root_dir>
$ ./external/avb/avbtool make_vbmeta_image --flag 2 --padding_size 4096 --output ./vbmeta_disabled.img
$ ls -l ./vbmeta_disabled.img
Selon les instructions aquí Si vous souhaitez utiliser l'image vbmeta, vous pouvez d'abord démarrer votre appareil en mode fastboot, déverrouiller le bootloader de l'appareil, et utiliser la commande suivante.
$ fastboot --disable-verification flash vbmeta vbmeta_disabled.img