Initialisation d’un nouveau Raspberry pour un fonctionnement sans carte micro-SD

Cet article détaille le processus d’initialisation d’un nouveau Raspberry pour obtenir un fonctionnement sans carte micro-SD avec un boot direct sur un disque dur externe. Le Raspberry devient ainsi totalement banalisé et il est possible de le changer sans aucune modification car toutes les informations se trouvent sur le disque dur.

Le fonctionnement décrit dans cet article n’est pas compatible avec les Raspberry 1 et 2 et avec les premiers Raspberry 3, il peut y avoir des impossibilités (à tester). Il faut aussi savoir que certains disques durs ne fonctionnent pas avec un Raspberry (ou que les Raspberry n’acceptent pas tous les disques durs ! ceci est aussi vrai avec les cartes SD et micro-SD).

Le principe est de faire un premier boot sur une carte micro-SD qui contient un système Raspbian avec un fichier config.txt adapté. La commande intégrée dans config.txt va modifier le registre 17 de l’OTP (One-Time Programmable) et permettre ensuite le boot direct sur disque externe sans carte micro-SD. Cependant, il sera toujours possible de booter sur une carte micro-SD, car le boot depuis le disque externe se fait uniquement en cas d’absence de carte micro-SD.

La modification dans le fichier /boot/config.txt est l’ajout d’une ligne en fin de fichier avec :

program_usb_boot_mode=1

Pour vérifier que la modification est opérationnelle, il faut passer la commande :

vcgencmd otp_dump | grep 17

et obtenir cette réponse :

17:3020000a

Pour simplifier l’opération, j’ai fait une image de carte micro-SD qui contient une version de Raspbian et le fichier config.txt adapté. Vous pouvez copier cette image sur une micro-SD (avec Win32 Disk Imager), booter avec cette carte et vérifier que le registre 17 est modifié. Puis vous enlevez la carte et bootez directement sur un disque que vous avez préparé avec l’image de votre choix.


Lien vers l’image de la carte micro-SD (1.6Go)

La modification du fichier /boot/config.txt est faite dans toutes les images, il suffit donc de booter une fois sur une carte contenant une image, de vérifier la valeur du registre 17 puis de booter sur disque sans carte.

Pour des explications plus complètes, vous pouvez aller voir cet article :

Framboise 314

Ensuite, il faut copier avec Win32DiskImager sur un PC l’image de son choix sur un disque dur connecté en USB au PC. Puis, arrêter le raspberry, enlever la carte SD et redémarrer avec le disque dur connecté au raspberry.

Après le redémarrage, il faut copier le fichier de paramètres avec FileZilla sur le raspberry dans le répertoire init puis lancer l’initialisation.

cd /home/pi/domoticz/scripts/init

./init.sh

ToDo : Ajouter les copies d’écran du dialogue initial

A la fin si tout c’est passé correctement, il faut rebooter pour avoir les nouveaux paramètres. On vérifie que tout est OK, adresses ip (commande ifconfig), prompt, etc. et on revérifie le lendemain matin que les shells prévus dans la crontab se sont bien exécutés.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *