Booter un Raspberry sur une clé USB ou un Disque Dur

RPi_USB

Si vous êtes un bidouilleur et vous utiliser régulièrement un Raspberry Pi, vous avez du surement au moins une fois se heurter au probleme de la carte SD qui ne répond plus ! Et oui, durée de vie de la carte SD, et toute autres mémoire flash, dépende de son nombre de cycles d’écriture. Au repos, les cartes SD dépourvues d’alimentation propre ont pour une durée de vie plus de 100 ans. Mais en écriture, elles nécessitent l’application d’une tension électrique supérieur à celle nécessaire à la lecture. Bref.. cette durée de vie dépend du nombre de cycles d’écriture.

  • pour une carte SD elle est d’environs 10 000 cycles
  • pour une clé USB elle est d’environ 100 000 cycles
  • pour un disque SSD elle est de plus de 100 000 cycles

(donnée moyenne pour matériel MLC (Multi Level Cell) soit 2 bits de données par cellule)

Alors pourquoi de n’est pas booter sur clé USB ou disque SSD ce qui peut être une bénédiction pour les systèmes ayant de nombreuses lectures écritures (Jeedom, Domoticz, Serveur HA-Bridge, LAMP, LMS etc…). L’avantage est de supporté les vitesses de transferts propres à l’USB 2, le système est bien plus réactif que sur une simple carte SD et éviter les problèmes  de système se corrompu.

Matériels nécessaire:

Procédure pour un Raspberry Pi 3.

  1. Mise à jour de la framboise
    1
    
    sudo apt-get update && sudo apt-get upgrade
    sudo apt-get update && sudo apt-get upgrade
  2. Reprogrammer OTP (One-Time Programmable)
    1
    
    echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
    echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
  3. Redémarrer avec
    1
    
    sudo reboot
    sudo reboot
  4. Verifier si le changement a bien été pris en compte
    1
    
    $ vcgencmd otp_dump | grep 17:
    $ vcgencmd otp_dump | grep 17:
  5. Si 17:3020000a s’afficher alors c’est bon 😉
  6. Arrêter votre RPi
  7. installer une image vierge de Raspbian sur votre Clé USB
    ou
    installer une copie de sauvegarde de votre carte SD sur votre clé USB
  8. brancher la clé sans la carte SD et démarrer votre RPI
  9. Le démarrage est un peu plus long mais une fois fait, ça ronronne…

Pour un Raspberry Pi 1 et 2 essayer une mise a jour de firmware avec
sudo rpi-update puis continuer avec les étapes cité plus haut.
si cela ne fonctionne pas télécharger, installer sur une carte SD le fichier bootcode.bin et démarrer votre RPI pour modifier le firmware.

PS: On peut raccourcir le délai de boot sur USB en insérant une carte micro SD vierge.

J’ai fait tourner sur USB un serveur HA-Bridge, mon LSM et bientôt je vais faire passer mon Jeedom sur un SSD.
mes système désormais sont bien plus réactif que sur une simple carte SD, que du bonheurs 😉

Attention, tous les clé USB ne sont pas compatible, ci joint  les clés testées.

Matériels compatible.

Gearbest Clé USB 32 Go
Clé USB 32 Go

Gearbest Clé USB 64 Go
Clé USB 64 Go

Gearbest Disque SSD 120 GBDisque SSD 120 GB

 

 

2 réflexions au sujet de « Booter un Raspberry sur une clé USB ou un Disque Dur »

  1. Bonjour
    Cela fonctionne impecablement. Merci pour ce tuto.
    Penser cependant à vérifier que /boot est bien positionné sur la clé USB (ou le SSD dans mon cas) dans le fichier /etc/fstab.

Laisser un commentaire

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