Depuis de nombreuses années les systèmes Linux embarqués utilisent Busybox (c’est le cas d’OpenWRT par exemple) est un programme qui intègre la plupart des commandes Unix classiques mais dans un seul utilitaire prenant très peu de place.
L’intérêt historique de Busybox est de pouvoir installer une distribution GNU/Linux (Debian fut la première à l’utiliser) à partir d’une simple disquette.
Depuis l’informatique et les distributions GNU/Linux ont fait beaucoup de chemin mais Busybox a survécu car elle a changé d’usage. En effet, la problématique des systèmes embarqués d’aujourd’hui est très proche de celle des systèmes informatiques d’autrefois, et l’espace mémoire reste pour ces appareils une denrée assez rare (même si c’est de moins en moins le cas).
Cependant Google a choisi d’utiliser un outil moins complet. Il s’agit de Toolbox qui permet le nécessaire mais suffisant. Ce choix est parfaitement cohérent avec celui du shell (à savoir sh sur android, contre bash sur beaucoup d’autres systèmes) mais il se peut que cela ne suffise pas à certains.
Dans cette optique, Ben Leslie a compilé Busybox pour l’architecture ARM (celle de l’émulateur d’Android).
Pour l’utiliser, commencez par la télécharger puis démarrez l’émulateur et connectez-vous à la console. Nous allons commencer par créer le dossier d’accueil de Busybox :
mkdir /data/busybox
On charge ensuite l’exécutable :
adb push busybox /data/busybox/busybox
Ensuite, nous allons demander à Busybox de créer les liens nécessaires pour pouvoir utiliser Busybox sans avoir à taper son nom systématiquement suivi de la commande voulue.
/data/busybox/busybox –install
export PATH=/data/busybox:$PATH
Voilà qui nous permet maintenant de ne taper que la commande voulue.
Pour plus d’infos sur Busybox, je vous invite à consulter la page manuel.