BerryBoot - bootloader et installateur universel

Posté le par | Réponse(s) : 5

BerryBoot est en quelque sorte le couteau suisse pour Raspberry Pi qui permet d'installer des distributions et de gérer le boot sur une seule et même carte SD. Au démarrage, BerryBoot propose un écran simple de sélection permettant d'installer plusieurs distributions Linux sur une seule carte SD. Une fois la ou les distributions souhaitées installées, il suffit de sortir de l'application. Au redémarrage, BerryBoot proposera de booter sur telle ou telle distribution. Simple, voire même très simple pour toute personne qui ne maîtrise pas ou qui ne veut pas jongler avec la manipulation d'images.
BerryBoot n'est pas nouveau puisque l'application date de juin 2012. Les corrections et améliorations ne cessent de se succéder depuis cette date, le résultat de la dernière révision est intéressante, surprenante et ... simple.

Marche à suivre

Télécharger l'archive zip sur le site officiel.

Extraire le contenu du fichier zip dans une carte SD formatée en FAT, puis insérer cette carte dans votre RPi. Jusque là c'est très simple.
Une fois que vous démarrez votre Pi il va lancer une interface qui laisse le choix de paramétrer l'overscan, la connexion réseau (LAN ou WIFI) et de vérifier les paramètres régionaux (disposition clavier et fuseau horaire).

bb1

Sélectionner l'emplacement où l'on souhaite stocker les fichiers du système d'exploitation, tous les supports de stockages connectés sont affichés, il faut choisir la carte SD montée sous le nom de mmcblk0, puis valider sur "Format". Il est bien sûr possible d'installer les fichiers du système d'exploitation sur la carte SD elle-même ou un disque externe USB stick/disque. Dans ce cas, les fichiers du système d'exploitation sont stockés là, mais il est impératif de toujours garder la carte SD dans le RPi au démarrage. ATTENTION: tous les fichiers existants sur le disque seront effacées.

bb2

Il ne reste plus qu'à sélectionner le système d'exploitation que vous souhaitez installer avec la possibilité d'en installer d'autres plus tard.

Par défaut BerryBoot propose les dernières versions de Raspbian, OpenELEC, Puppy Linux, RaspRazor, Sugar, LTSP thinclient, BerryWebserver (basé sur Lighttpd + PHP 5.3 + SQLITE) et Memtester.

bb3

BerryBoot va se charger de télécharger les images à partir d’Internet automatiquement.

Une fois tous les OS installés, on peut sélectionner un OS particulier en favori au démarrage, cloner un OS pour le modifier, etc... Des paramètres avancés sont aussi disponibles pour donner, par exemple, accès à un mode console.

Pour terminer et relancer BerryBoot, cliquer simplement sur "Exit".

bb4

BerryBoot est configuré comme souhaité, il ne reste plus qu'à exploiter ou découvrir les OS installés.

Pour ajouter/supprimer/cloner/etc.. des OS, il suffit de sélectionner "Edit" au démarrage, l'écran d'ajout d'OS s'affiche. Là encore, je ne pense pas qu'on puisse faire plus simple.

Pour les utilisateurs avancés

Il est possible d'ajouter vos propres systèmes d'exploitation personnalisés (ou non listés) au menu. Cela nécessite cependant que vous convertissiez votre image système de fichiers au format SquashFS (Wikipédia).

La plupart des images de système d'exploitation pour Raspberry Pi sont des images de disque contenant deux partitions. Une partition FAT (avec le chargeur de démarrage et les fichiers du noyau), et une seconde partition ext4 (avec tout le reste). C'est cette seconde partition qui va nous intéresser.

Sur un ordinateur de bureau tournant avec Linux qui a kpartx et mksquashfs (ou  squashfs) installés, vous pouvez convertir la seconde partition de SquashFS comme ceci :

$ sudo kpartx -av image_you_want_to_convert.img 
add map loop0p1 (252:5): 0 117187 linear /dev/loop0 1
add map loop0p2 (252:6): 0 3493888 linear /dev/loop0 118784
$ sudo mount /dev/mapper/loop0p2 /mnt
$ sudo mksquashfs /mnt converted_image.img -comp lzo -e lib/modules
$ sudo umount /mnt
$ sudo kpartx -d image_you_want_to_convert.img

À noter : sont exclus les /lib/modules de l'image, parce que les modules noyau livré avec BerryBoot sont utilisés à la place, et partagé avec toutes les distributions.

Mettre l'image formatée SquashFS sur une clé USB, aller dans le "programme d'installation du système d'exploitation", maintenir le bouton de la souris sur "Add OS" et sélectionnez "Installer à partir d'une clé USB". Possibilité de choisir une image correspondant à une certaine taille de mémoire : .img128, .img192, .img224 ou .img240 au lieu de .img.

 

Je vais de ce pas lancer une session RaspRazor pour découvrir la bête.

Raspberry Pi is sexy !


Licence Creative Commons
Cet article, sauf mention contraire expresse, est publié sous licence Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported Licence.

Vous avez aimé cet article ? Alors partagez-le avec vos amis en cliquant sur les boutons ci-dessous :
Google Plus Twitter Facebook Linkedin Framasphere email Flattr !

5 commentaires sur “BerryBoot - bootloader et installateur universel

  1. Bonjour, j'ai un soucie avec la conversion d'une image de Qt on pi. Cette image me retourne 3 boucles

    add map loop1p1 (252:3): 0 249550 linear /dev/loop1 62
    add map loop1p2 (252:4): 0 2000678 linear /dev/loop1 249612
    add map loop1p3 (252:5): 0 998448 linear /dev/loop1 2250290

    j'ai essayé de monter "loop1p3"

    /dev/mapper/loop1p3 ressemble à un espace d'échange - n'a pas été monté
    mount : vous devez indiquer le type de système de fichiers

    j'ai essayé avec "loop0p3"

    mount : le périphérique spécial /dev/mapper/loop0p3 n'existe pas

    il n'y à que "loop1p2" qui a fonctionné mais l'image qui faisait au départ 2,2Go n'en fait plus que 225Mo.
    Auriez vous une solution à ce problème.

    Note:je suis novice dans le monde de Linux.

  2. bonjour, génial le tuto, ça fonctionne. or j'aurais aimé un peu plus d'explication pour la partie "pour les utilisateurs avancés". je suis bloqué à la première ligne de commande, on m'indique "failed to stat()" avec après le nom de mon fichier .img, lorsque j’exécute la première commande. je voudrais bien un peu d'aide, merci.

  3. Bonjour,
    J'ai besoin d'aide quand je rentre cette ligne : add map loop0p1 (252:5): 0 117187 linear /dev/loop0 1
    debian me répond :-bash erreur de syntaxe près du symbole inattendu <>
    Si vous pouviez me dire ce que je dois faire je vous serais très reconnaissante.
    Je suis un raspberry pi3 avec debian jessie raspian.
    Cordialement.
    Michelle

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.