Publié le 26 juillet 2017 - par

Boot simplifié sur USB avec les Raspberry Pi 1, 2 et 3

La Fondation a dû avoir les retours sur les dégâts que le  Raspberry Pi occasionne aux cartes SD. C’est sans doute pour pallier à ce problème qu’elle a développé des moyens de s’affranchir de la carte SD, le maillon faible du Raspberry. Dyox vous propose ce tutoriel pour éliminer la carte micro SD du Raspberry Pi.

Boot simplifié sur USB avec les Raspberry Pi 1, 2 et 3

Nous devons cet article à Jean-François (@dyox), lecteur assidu et attentif du blog, et participant actif au forum framboise314. Il a publié ce tutoriel il y a quelques jours sur le forum.

Lexique
OTP : One-Time Programmable
MSD : Mass Storage Device (pour dire disque dur ou clé USB)
DD : Disque Dur

Si c’est une nouvelle installation :Sinon, il faut refaire une image complète de la carte micro SD pour la mettre sur le MSD.

Les prérequis

  • Un Raspberry Pi 3 (BCM2837)
  • Une version de Raspian >= 2017-04-10 (actuellement 2017-07-05)
  • Le nouveau bootcode.bin pour les Raspberry Pi (BCM2835), Raspberry Pi 2 (BCM2836) et si la méthode conventionnelle pour le Raspberry Pi 3 ne fonctionne pas.

Nota : Le tutoriel qui suit concerne le Raspberry Pi 3 avec une nouvelle installation de Raspian, en l’occurrence la version du 2017-07-05.

Tutoriel

Sur PC (pour ma part sous Windows) :

  1. Installez Raspian sur la SD ET ensuite sur le MSD avec la procédure conventionnelle.
  2. Reprogrammer l’OTP en ajoutant program_usb_boot_mode=1 à la fin du fichier config.txt de la carte SD. Pour cela, aucune difficulté. Bien que la SD possède au moins 2 partitions, seule la 1ère (la partition de boot), qui est en FAT32, est accessible sous Windows et donc le fichier config.txt peut être modifié sous Windows
  3. Démarrer le Raspberry Pi avec la carte microSD et on vérifier tout de suite la modification du registre 17 de l’OPT :
    $ vcgencmd otp_dump | grep 17
    17:3020000a  la réponse doit être cette valeur, sinon il est inutile de continuer

On peut maintenant effacer ou commenter la ligne program_usb_boot_mode=1

Vous pouvez éteindre le Raspberry Pi et enlever la carte micro SD.

Branchez le MSD et démarrez le Raspberry Pi. Si le MSD est compatible, on boote dessus. Le temps de démarrage se situe entre 5 et 10s.

Les résultats


Pour ma part, cela fonctionne avec un -très vieux- DD 2,5 » 40Go (Momentus, 0,47A) PATA branché sur hub alimenté car directement sur le Raspberry Pi il « gratte », même avec son cordon double USB. Et je n’ai pas besoin de ralentir la séquence de boot (voir plus loin).

Si cela ne fonctionne pas pour vous voir la section dépannage.

Voilà c’est fini ! Votre Raspberry Pi peut maintenant booter sur USB et LAN, en plus de la micro SD bien sûr ! Si celle-ci est présente, elle reste prioritaire lors de la séquence de boot.

Dépannage

  • Si cela ne fonctionne pas, essayez d’étendre la durée d’initialisation du MSD (5s au lieu de 2s) avec l’option program_usb_timeout=1 dans le config.txt.
  • Augmentez l’intensité des ports USB avec l’option max_usb_current=1 dans le config.txt (1200mA au lieu de 600mA) pour un DD. Inutile car automatique sur la v3 !
  • Essayez aussi avec le nouveau bootcode.bin. A mettre SEUL sur une carte microSD formatée en FAT32. Si cela ne fonctionne toujours pas, ajoutez un fichier timeout en plus pour étendre la durée d’initialisation du MSD à 6s.
  • Si cela ne fonctionne toujours pas, alors le MSD n’est pas compatible.

Astuces

On peut raccourcir le délai de boot sur MSD en insérant une carte micro SD vierge (5s de gagnées)

Si le MSD est une clé USB, pensez à utiliser le système de fichier F2FS.

Pour en savoir plus

Lisez les articles pointés par des liens dans les sources, tout est bien documenté et expliqué en particulier sur https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/README.md

Pour info

Mes clés OCZ ATV USB2 32Go et INTEGRAL USB2 32Go (ci-dessus) n’ont pas fonctionné

Par contre cette clé Transcend 16 Go a fonctionné sans « artifice », comme mon DD.

Sur les Pi 1 et 2 et la manip du bootcode.bin modifié (pas besoin du fichier timeout ) :
Cette clé fonctionne, mes précédentes clés, toujours pas… et mon DD a toujours besoin de son hub.
Le boot sur le Raspberry Pi 3 avec NOOBS sur ma clé USB Transcend fonctionne également.

Bon maintenant, j’ai besoin de motivation :mrgreen:
L’objectif est de modifier rpi-clone pour que le clonage se fasse sur MSD et si c’est une clé qui est détectée, celle-ci sera formatée en F2FS.

Conclusion

L’article sur le boot du Raspberry Pi 3 que j’avais publié en août 2016 n’est plus d’actualité car la Fondation a fait évoluer les méthodes de boot pour tous les Raspberry Pi.

Merci à Jean-François @dyox pour ce tutoriel publié sur le forum framboise314 🙂 et dont il a autorisé la reprise sur le blog, afin qu’un maximum de lecteurs en profite.

Bien entendu si @dyox aboutit dans sa modification de rpi-clone, les pages de framboise314 lui sont ouvertes 😀

Si vous utilisez la méthode de Jean-François, n’hésitez pas à signaler dans les commentaires ci-dessous les modèles de clés, disques durs… qui fonctionnent et ceux qui restent récalcitrants malgré vos efforts.

Sources

Bootez votre Raspberry Pi 3 sur une clé USB

 

 

Share Button

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

56 réflexions au sujet de « Boot simplifié sur USB avec les Raspberry Pi 1, 2 et 3 »

    1. dyox

      Bonjour et merci Pascal,
      Concernant votre lien, le tuto date du 16/05/2017, et il manque la version de Raspian en tant que prérequis. Si c’était la version 2017-04-10, mon tuto aurait été applicable car seules les versions >= 2017-04-10 fonctionnent. Je l’avais marqué dans les prérequis mais François a décidé de le faire sauter, étant donné que je pars sur une nouvelle installation.
      Et c’est pourquoi j’affectionne particulièrement la section « prérequis » dans les tutos. Nous avons une vision chronologique du déroulement, quelles versions ont été utilisées… Cela évite bien des surprises !
      La différence avec la nouvelle méthode est que celle-ci permet de s’affranchir complètement de la SD (au détriment de 5s supplémentaires). De plus il est évident qu’elle est extrêmement simple. La Fondation a fait de l’excellent travail !

      Voici en plus quelques clés compatibles
      https://www.raspberrypi.org/blog/pi-3-booting-part-i-usb-mass-storage-boot/

      Répondre
      1. François MOCQ Auteur de l’article

        oups désolé pour la modif je n’avais pas fait attention
        j’ai rajouté l’info pour la version 🙂
        et mea culpa c’est vrai que j’indique rarement quelle version j’ai utilisée

        Répondre
  1. Bruno

    Bonjour,
    Tout grand merci pour cet article à vous et à Jean-François.
    Je souhaiterais un peu d’explication sur ce que vous entendez lorsque vous parlez de la méthode conventionnelle quand celle-ci est appliquée au MSD ? J’ai essayé d’écrire un fichier img vers mon DD mais celui-ci n’apparaît pas.
    Il faut qu’il soit formater en Fat32 ?
    Bruno

    Répondre
  2. Seb

    Bonjour,
    Etes vous sûr que booter sur l’usb réduit le risque de corruption ?
    D’après ce que j’ai pu lire, les clés USB sont aussi sensibles à l’usure et aux corruptions (lors de coupure de courant) que les cartes SD.
    F2FS semble avoir une meilleure gestion de l’usure.
    Les seules solutions vraiment fiables seraient de passer le système en read only (avec tmpfs comme OpenEnergyMonitor ou overlayFS comme Domoticz). On peu passer en RW une fois par jour pour y écrire les données et la remettre ensuite en RO.

    Répondre
    1. dyox

      Merci Seb, j’attendais avec impatience cette réflexion. 🙂 Il est sûr que si le MSD est une clé est que celle-ci n’est pas « retravaillée » et est donc l’image de la SD, on reporte le problème de la SD sur la clé… Je pense quand même la clé légèrement plus résistante mais ce n’est que mon ressenti/fantasme !
      Je pense aussi que la Fondation à proposer le boot usb pour principalement brancher un DD. Cela renforce leur idée que la Pi peut être considérée comme un mini-ordinateur, pouvant se subsituer à un pc pour des petites tâches. Peut-être aussi une valeur ajoutée pour papie/mamie, cela fait plus sérieux !
      Si j’étais vendeur de matériel, je me lancerai sur le créneau : vendre une Pi déverrouillée + dd compatible + boitier + alim. Du clef en main en quelque sorte. Certes il y a WDlabs mais ils utilisent encore l’ancienne méthode.
      Pour prendre soin de la mémoire flash, on doit utiliser F2FS, mettre les logs en ram, désactiver le swap, virer l’horadage des fichiers(timestamp)…
      Voici quelques liens:
      https://www.blaess.fr/christophe/2015/10/19/renforcer-une-distribution-raspbian-jessie/
      https://github.com/azlux/log2ram (merci à je ne sais plus qui du forum 🙂 )
      http://www.framboise314.fr/et-si-on-se-passait-du-swap/

      Répondre
  3. dyox

    Mais de rien.
    J’entends par méthode conventionnelle celle appliquée ici par François ou par la Fondation, à savoir utiliser de préférence Win32DiskImager pour windows…
    Voir ici : https://www.raspberrypi.org/documentation/installation/installing-images/README.md
    Personnellement, je l’ai fait avec Win32DiskImager.
    Et il faut savoir que dans le fichier .img, c’est lui qui impose son type de FS (File System). Vous avez beau formaté votre SD ou MSD en FAT32 ou NTFS, celui-ci se retrouvera toujours pour Raspian avec la 1ère partition en FAT32 (type 0C) et la 2ème en EXT4 (type 83).
    Si vous voulez en savoir plus, j’avais posé une réflexion sur le forum (d’ailleurs c’était mon tout 1er post 🙂 ):
    http://forums.framboise314.fr/viewtopic.php?f=63&t=464

    Répondre
  4. Julien

    Bonjour,

    Merci pour cet article très intéressant.

    Juste une question concernant le titre qui fait mention des Pi1, 2 et 3.

    À la lecture de l’article, je ne comprends pas le rapport avec les Pi1 et 2…?!

    Julien

    Répondre
    1. dyox

      Il est vrai que ce n’est pas très clair pour les v1 et v2.
      En résumant, il faut mettre le nouveau bootcode.bin (lien dans les prérequis) SEUL sur une carte SD formatée en FAT32. Si cela ne fonctionne toujours pas, ajoutez un fichier timeout en plus pour étendre la durée d’initialisation du MSD à 6s.
      Et bien sûr si cela ne fonctionne toujours pas, le MSD n’est pas compatible.

      Répondre
      1. Geo

        salutations,
        donc pour les version 1 et 2, si le MSD est compatible, après avoir booté avec seulement la SD remplie uniquement par le nouveau bootcode.bin (+timeout 6s), il n’est plus nécessaire de laisser la SD dans le Rpi… ceci est la méthode pour modifier la séquence de bootage du Rpi 1 et 2 (mise à jour du microcode ?), mais peux éventuellement marcher sur une Rpi 3 si les méthodes pour ce modèle ont échoué.
        Me suis-je trompé quelque part ?

        Utiliser une SD vierge fait gagner 5s… pareil avec un SD précédemment grillé ?

        PS: (concernant le Rpi 3) qu’est-ce que l’OTP ? -> la EPROM du Rpi ?
        « en ajoutant program_usb_boot_mode=1 à la fin du fichier », ce fichier ce situe où… dans l’OTP ?

        dernier point sur l’alimentation des DD :
        est-ce uniquement le pic au démarrage de la rotation du DD qui pose problème ?
        Un simple Y (dédoubleur) micro USB sur l’alim ne résoudrait-il pas le problème ?… à moins que l’appel de courant du DD + la consommation du Rpi surpasse la capacité de l’alim -> voir la doc pour chaque DD (datasheet).

        personnellement j’utilise un SSD 32Go (0,5 Watt) avec un adaptateur USB/SATA récupéré dans un boitier de DD externe 2″5… je ne suis pas sujet à ce problème =)

        Répondre
        1. dyox

          Bonjour,
          Pour les 1 et 2, il faut obligatoirement une SD car comme l’OTP n’a pas été modifié, le système s’attend à trouver le bootcode.bin sur la carte SD, et ceci à chaque redémarrage. Oui, c’est bien ça pour le reste de la question.
          Pour en savoir plus sur la séquence de boot :
          http://www.framboise314.fr/bootez-votre-raspberry-pi-3-sur-une-cle-usb/
          https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/bootflow.md

          Je ne sais pas pour une SD grillée. J’aurai tendence à dire non mais il faut tester. Dites le nous ! 🙂

          On peut comparer l’OTP comme un BIOS. François l’a bien expliqué. Voir mon 1er lien au dessus.
          Comme je disais en point 2.
          « Reprogrammer l’OTP en ajoutant program_usb_boot_mode=1 à la fin du fichier config.txt de la carte SD. Pour cela, aucune difficulté. Bien que la SD possède au moins 2 partitions, seule la 1ère (la partition de boot), qui est en FAT32, est accessible sous Windows et donc le fichier config.txt peut être modifié sous Windows ».
          Sinon, sous Raspian, ce fichier est accessible sous « /boot/config.txt »
          En fait, une fois Raspian démarré, la 1ère partition se retrouve en /boot/

          Oui, alim faiblarde d’où le hub.

          Répondre
  5. Adrien

    Bonjour,

    Dans l’article il est fait mention de bootcode.bin pour les versions 1 & 2 du raspberry.

    Par contre en est-il de même pour les versions zero et zero w ? Au pire je peux tester et vous faire un retour.

    Répondre
  6. yann

    Bonjour à tous !

    Merci pour ce tuto, je vais m’empresser de le tester sur un DD externe!

    Avant, je vais vous faire part de mon expérience d’utilisation et de fiabilité du Raspberry comme PC familial…

    Au départ j’ai acheté un Raspberry par curiosité,poussé par framboise314 afin de faire des bidouilles électroniques.

    J’ai été rapidement étonné par la puissance de cette carte…

    En parallèle je songeais à remplacer le PC familial fixe sous windows XP (17 ans d’âge) dont l’alimentation commençait à donner des signes de faiblesse…un condensateur hs je parie!

    Et j’ai eu une idée farfelue…pourquoi ne pas utiliser un Raspberry à la place de ce PC…moins coûteux qu’une nouvelle alimentation ou qu’un nouveau pc ! Utopique ?

    Est-ce que le Raspberry peut faire tout ce que fait mon poste XP :

    Traitement texte, tableur, impression et scanner via mon imprimante Canon, connexion aux appareils photos, lecture de DVD, Web évidemment, et éventuellement du développement.

    Il fallait aussi pouvoir lire tous les fichiers créés sur le poste Windows !

    Après des jours de recherches dans les dépôts et d’essais…je me décide de me lancer dans l’achat d’un disque SATA, d’un adaptateur USB / SATA avec alimentation, d’un adaptateur HDMI / VGA, d’un hub USB alimenté et d’un lecteur/graveur DVD.

    Voici le résultat…

    Pour remplacer le pack Office :

    Libre office que l’on peut trouver en dernière version dans le dépôt backports https://backports.debian.org/changes/jessie-backports.html, après près de 6 mois d’utilisation, aucun problème de lecture de formats word et excel (si on n’utilise pas de macro VBA).
    En prime avec la dernière version on peut éditer des fichiers PDF ! Génial!

    Pour l’impression / Scan :
    J’étais un peu dubitatif sur la possibilité d’utiliser mon imprimante / scanner Canon…
    Erreur, avec CUPS aucun souci, et pour scanner, simple-scan et gscan2pdf, c’est même beaucoup plus rapide que sous mon PC windows!

    Pour remplacer l’explorateur :
    Comme explorateur on a le choix, Nautilus + nautilus-image-converter pour retailler les photos en un clic, xfe (pratique et léger !), Thunar, il y en a pour tous les goûts !

    Pour la lecture de DVD :
    Après quelques paramétrages trouvés sur le net on peut utiliser VLC…un peu déçu du résultat malgré tout, notamment pour l’ergonomie…mais c’était avant de tomber sur KODI – épatant !

    Pour le WEB :
    Chromium me parait le meilleur, il faut simplement éviter d’ouvrir plusieurs onglets, le manque de RAM se ressent…mais ce n’est pas vraiment un problème il suffit de le savoir.

    En prime j’ai installé Sweet Home 3D pour modéliser des pièces d’appartement ! ça marche !

    On peut trouver aussi des tas de jeux, qui peuvent paraître ringards mais qui font le bonheur des petits et des grands…

    Pour faire un peu de développement, après de longues recherches d’un vrai environnement intégré, permettant de faire des IHM sans jongler avec des outils abscons et assez léger pour ma Framboise, j’ai trouvé Lazarus pour compiler du pascal (finalement c’est le seul compilateur en dehors du C/C++)!
    Lazarus intègre un vrai générateur d’IHM, sans nous noyer dans des lignes de codes, et rien n’empêche de faire des appels Python via du code Pascal. Génial ! Mais il y a aussi l’étonnant gambas3 ! Tout cela marche impec sur raspberry !

    Pour en revenir dans le sujet, au cours de mes essais j’ai grillé 2 cartes SD avec le Raspberry sans vraiment comprendre pourquoi. Peut-être une mauvaise qualité.

    En tout cas depuis presque 6 mois mon PC Framboise fonctionne à merveille avec la même carte SD, j’ai appliqué la méthode
    http://www.framboise314.fr/et-si-on-se-passait-du-swap/. J’ai un double de la carte SD en cas de pépin.

    La Framboise est utilisée tous les jours, il boote en 30 secondes (mon pc Windows c’étaient plusieurs minutes), il consomme presque rien. On découvre régulièrement des nouveaux logiciels (je crois qu’il y en a près de 20000 !).

    Enfin la sauvegarde est faite via grsync sur un disque externe USB.

    Merci à François et Framboise314 qui m’ont fait découvrir cette merveille !

    Répondre
    1. msg

      Bonjour ,

      Canon comme imprimante est à éviter sous linux , préférer plutôt HP , Brother , Samsung …. dont la mention Linux figure sur les OS supportés .
      J’ai une Canon LBP1120 , c’est une catastrophe sous linux , sous windows , elle fonctionne nickel , la faute aux drivers Linux de chez Canon .

      Quelques utilitaires intérressant Linux , certains fonctionne sous interface KDE:
      K3B : gravure / copie , CD , CD-RW , DVD
      Xsane : Scanner documents
      Audacity : enregistrement et traitement du son
      Gimp : dessin / retouche photo (photoshop)
      Ksnapshtot : capture image d’écran (écran entier , fenêtre entières ou zone définie )

      En jeux , j’aime bien :
      Kbreakout : casse briques
      Kiriki ; je de dés Yam’s
      Kmahjongg : jeu de tuiles
      Ksquares : mon préféré qui me rappelle un jeu d’enfance !!!
      Sur une feuille à petit carreaux , il fallait dessiner à tour de role les cotés de carrés , le point allait à celui qui ferme le carré . Le vainqueur est celui qui totalise le plus de carrés .
      Ksudoku ; le sudoku classique , mais aussi en 3D , très dur .
      Palapeli : excellent jeu de puzzle , à partir d’images personnelles et avec le nombre de pièces voulues .
      Marble : globe terrestre , très ludique .

      Répondre
  7. Gilles

    Petite question, si l’ont modifie l’OTP avec le bootcode.bin cela permet si j’ai bien compris de booter sur un hdd ou une clé usb branché sur un port USB.

    sur le site de raspberry il est écrit que cette opération est IRREVERSIBLE.

    comment doit être formaté le HDD (est-ce que l’install de libreelec créera un système de boot compatible ?

    Mon but est de faire un serveur multimédia avec Libreelec comme distribution, sur un disque dur 2.5″ de 1To .

    Merci

    Répondre
    1. dyox

      Petite question, si l’ont modifie l’OTP avec le bootcode.bin cela permet si j’ai bien compris de booter sur un hdd ou une clé usb branché sur un port USB
      => c’est l’option dans le config.txt qui modifie l’OTP et seulement pour le Pi3

      sur le site de raspberry il est écrit que cette opération est IRREVERSIBLE.
      => Dans la séquence de boot, la sd reste prioritaire à l’usb
      voir https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/bootflow.md

      comment doit être formaté le HDD
      => sur le msd, une partition doit être en FAT32 (celle contenant le boot) et l’autre en ext4. L’image de l’iso Raspian en quelque sorte. Et pour être précis, la seule condition est la partition de boot qui doit être en FAT32, et ce quelque soit sa position (1ere, 2e…)
      je cite : It is no longer necessary for the first partition to be the FAT partition, as the MSD boot will continue to search for a FAT partition beyond the first one.

      Répondre
  8. Gilles

    OK,

    j’ai cloné ma carte SD libreelec (1er partition FAT16 768Mb, 2eme partition EXT4 14.08Gb) sur un disque dur 300Go avec AOMEI Partition Assistant.

    le PI3 ne boot pas si hdd branché sans sd, pourtant l’OTP indique bien 17:3020000a

    soit j’ai oublié quelques choses soit il manque quelques chose 🙂

    Répondre
    1. dyox

      essayez déjà avec Raspian si tout se passe bien.

      le PI3 ne boot pas si hdd branché sans sd
      => quelle sd ? une vierge ou la libreelec

      Répondre
        1. dyox

          C’est ce que je disais plus haut : la sd est prioritaire donc cela ne fonctionne pas du tout.
          A voir maintenant avec Raspian.
          HDD auto-alimenté ?

          Répondre
  9. Vanille

    Bonjour,

    J’ai lu le tutoriel, je l’ai appliqué; ça marche.
    Mon RPI3 boot sur USB 32Go sans carte SD.
    Précédemment j’ai utilisé BerryBoot mais les performances semblaient affectées par cette passerelle.
    Maintenant mes questions:
    – on parle ici de Rasbian. D’autres distributions sont-elles compatibles avec ce bootUsb ? Je pense à RetroPi et LibreElec, deux distributions que j’utilise régulièrement
    – et dans le cas où on a plusieurs distributions sur plusieurs disque USB ? Je rêve qu’on puisse nous proposer un choix …

    Merci de votre retour d’expérience. Ma prochaine étape est d’appliquer le type de fichier F2FS pour soulager ma clé.

    Cordialement

    Répondre
      1. Vanille

        Bonsoir,

        J’ai fait deux choses: modifier mes partitions USB d’ext4 en f2fs comme conseillé, et appliqué sur deux distributions: Raspbian et Retropie. Les deux fonctionnent. Quant au gain de performance, seule Raspbian a été regardée en détail; ça à l’air de bien marcher.

        Mais OpenElec ne fonctionne pas. En fait, quand on descend la distribution, une partition en Fat ne s’appelle pas BOOT mais OPENELEC et l’autre en Ext4 est vide. Donc même sans toucher au type de partition, le RPI ne boot pas sur la distribution OpenElec. Je ne sais pas trop pourquoi…

        Deux sur trois, c’est mieux que rien. reste à tester dans la durée, mais contrairement à Yann (poste du 3 août) je n’en ferai pas un poste de travail …

        Cdlt

        Répondre
  10. Jean Vaure

    Bonjour,
    J’ai essayé avec un ancien disque USB 2.0 LACIE de 160 go. Le boot démarre, affiche l’écran coloré, et les 4 framboises. Puis plus rien.
    J’ai ensuite essayé une clé USB PNY de 32 go. Ça fonctionne ! Mais très lentement.
    Enfin j’ai utilisé un disque seagate Barracuda de 320 go à 7200 t/m. C’ nettement meilleur.
    Une question : Pourquoi utiliser le PARUUID dans le fstab, alors qu’il peut être modifié par fdisk
    ?
    Cordialement

    Répondre
  11. chris

    Super tuto! Mais j’ai pas bien compris le bootcode.bin, vous le mentionnez dans les pré-requis et il n’est mentionné nulle part dans la procédure. Que faut-il en faire?? J’attends juste cette info avant de me lancer, merci!

    Répondre
    1. dyox

      Bonjour,
      Firefox me donne 10 pour l’occurrence « bootcode.bin », en faisant une recherche. C’est la 2nde occurrence qui donne la procédure, dans la section dépannage.
      Le fichier « bootcode.bin » est essentiellement pour les RPiv1 et v2. Il peut concerner la v3 si la clé ne boote pas malgrès la modification du registre + program_usb_timeout=1.
      En résumé, pour la v3 et pour un non fonctionnement successif du MSD, les essais sont :
      – modification du registre ; si cela fonctionne tant mieux sinon :
      – + program_usb_timeout=1…
      – bootcode.bin sur SD…
      – + fichier timeout ; si cela ne fonctionne toujours pas alors il reste l’ancienne méthode : boot sur SD et déportation de l’OS sur MSD.
      Voir le tuto de François : http://www.framboise314.fr/booter-le-raspberry-pi-sur-un-disque-dur-usb/
      J’espère avoir été plus clair.

      Répondre
  12. chris

    super, merci, je n’avais pas vu ce paragraphe, désolé :

    Essayez aussi avec le nouveau bootcode.bin. A mettre SEUL sur une carte microSD formatée en FAT32. Si cela ne fonctionne toujours pas, ajoutez un fichier timeout en plus pour étendre la durée d’initialisation du MSD à 6s.

    Répondre
  13. chris

    Juste pour confirmer que ça marche bien pour un Raspberry Pi (BCM2835) en formatant une SD FAT32 avec le bootcode.bin, booter une fois avec la carte, attendre un peu… puis éteindre l’alim, connecter le disque externe avec une image bootable et ça démarre! Merci.

    Répondre
    1. Geo

      une question chris :
      tu dis  » … en formatant une SD FAT32 avec le bootcode.bin, booter une fois avec la carte, attendre un peu… puis éteindre l’alim, … »
      cela ne risque t-il pas de tuer la carte SD d’éteindre en coupant l’alim plutôt que de manière soft ?
      les 2 seules fois où j’ai eu une coupure d’alim j’ai perdu mes cartes SD ='(

      PS, d’ailleur, s’il y a une procedure d’extinction qui garantie l’intégrité de la SD je suis preneur ! =)
      *(qui le garanti qd on a plu la main sur l’OS)

      Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Dyox
      merci pour ce tuto
      je vais mettre l info sur les réseaux sociaux
      sur le blog quand j’aurai un peu plus de temps…
      bonne année pleine de réalisations à la framboise
      cordialement
      François

      Répondre
  14. chris

    @ Geo, effectivement cette partie est imprécise, j’ai réussi à installer et à faire tourner une seule fois mon installation. A mon retour de vacances, j’ai essayé de rebooter depuis le disque SSD, mais sans la carte, sans succès. J’ai ensuite rebooté avec la carte et à part l’écran coloré, rien ne se passe. Donc pour moi, je n’arrive pas à reproduire… Doit-on rebooter avec la carte SD et le bootcode.bin? Ou sans carte SD? Essayé les deux avec mon RPi2, mais sans succès, j’ai du louper une étape…

    Répondre
    1. Geo

      je t’invite à vérifier l’intégrité de ta SD ou de simplement tester la chose à l’aide d’une autre SD, si la situation se débloque, je serai (et sûrement d’autre lecteurs) content d’avoir un retour =)

      PS: je reçois ma Pi3 dans qq semaine, vivement le passage de Pi1 à la v3 ^^’
      …en avant vers de nouvelles aventures ! =D

      Répondre
  15. Clemzo

    Bonjour et bonne année à tous.

    Je m’excuse pour ma question qui pourra vous paraître trop évidente, mais dans le 1er point du tuto, lorsque vous évoquez « ET ensuite sur le MSD avec la procédure conventionnelle » je ne suis pas sur comprendre de quoi vous parlez.
    Mon objectif est d’utiliser un disque dur, mais avec les outils classiques pour écrire une image disque seuls les cartes amovibles ou clés USB et mon disque dur (USB) n’est jamais proposé.

    Serait-il possible d’ajouter dans l’article en lien qui mènerait à cette « procédure conventionnelle ».
    Désolé encore pour cette incompréhension.

    Cordialement.

    Répondre
    1. Geo

      j’ai également un petit brouillard sur ces terminologies avec lesquels je ne suis pas habitué.
      un petit lexique dans la première partie indique clairement que MSD est le sigle utilisé sur cette page pour parler de HDD, SSD, USB key, et autres « stick » de stockage… /!\ à travers le port USB. /!\
      un exemple capilo-tracté serait : une carte SD qui boot par le port USB à travers un lecteur de carte.

      ce qu’il faut comprendre peut être résumer simplement :
      – Le pi démarre TOUJOURS sur sa propre puce mémoire (l’OTP), laquelle lui indique les procédures à suivre.
      – L’étape de boot qui suit est TOUJOURS de tenter de démarrer sur le port SD/uSD
      – l’OTP peut être modifier (en partie) grâce au fichier binaire « bootcode.bin », pour permettre de tenter, en plus, de démarrer sur le port USB (TOUJOURS après les 2 premières étapes).

      voici un lien qui explique cela plus en détail, et un autre pour préparer ton disque USB :
      http://www.framboise314.fr/bootez-votre-raspberry-pi-3-sur-une-cle-usb/
      http://www.framboise314.fr/booter-le-raspberry-pi-sur-un-disque-dur-usb/

      préparer un periphérique USB est asser simple… 1) tu télecharge le fichier image (.ISO) de ta distribution Linux, 2) tu utilise un logiciel qui fait le reste pour toi, en lui indiquant ton fichier téléchargé.

      Si tu tourne sur Windows, je te conseil d’utiliser Rufus, pour 2 raisons :
      1) c’est un logiciel « libre » sous licence GPLv3 (difficile de faire moins libre)
      2) son but premier est de créer un support de boot fiable, sans corruption, et de limiter les erreurs humaine lors de la création du support (ex : formater son disque dur interne plutôt que sa clef USB).
      3) il est conçu à l’origine pour les stick USB et cartes mémoires… mais il fonctionne sur la majorité des disque dur USB (SSD OCZ Vector 180, WD 3″5 2To, etc. fonctionne chez moi) =)

      il est irréprochable sur les points suivant :
      – sécurisation du support avant d’opérer le formatage -> aucun autre programme ne peut y accéder, et y écrire des données
      – vérification de l’intégrité de la mémoire (son état de santé)
      – vérification de succés de l’écriture (pas à la fin… mais à chaque bloc mémoire)
      – limite son usage pour du simple boot uniquement (pas dualboot ou +) pour maximiser au maximum les chance de démarrage dans des cas de figures non anticipé.

      hint : l’executable standart et version portable sont identique, la diférence est faite par le logiciel lui même lors de son lancement. >> s’il trouve un  » p  » ou un  » P  » quelque pars dans le nom, il se lance alors en version  » portable  »
      https://rufus.akeo.ie/?locale=fr_FR

      Répondre
      1. Geo

        dans les bon points de Rufus, j’ai oublié de mensionner qu’il est très bon pour les alignement de partition… un point critique qd il est question de boot.
        Si vous avez déjà été confronté au problème pour un carte SD, et avez tenté de trouver s’il fallait bien décaler le 1er secteur mémoire de 512o, 1Mo ou 4Mo, vous me comprendrez… ^^’

        Répondre
  16. Clemzo

    Je te remercie pour cette précision.

    Par contre comme je le mentionne précédemment, le lien en question fait référence à Etcher pour écrire l’image de raspbian sur les supports, or il ne propose jamais mon DD.
    Pour avancer j’ai utilisé Win32DiskImager qui me propose bien mon disque USB.
    du coups tout se passe bien jusqu’à :
    $ vcgencmd otp_dump | grep 17 => 17:3020000a.
    Mais aucun boot sur mon DD malgré le recours à toutes les pistes de dépannage.
    Suite à quelque modifications, j’ai réussi à faire reconnaître la seconde partition de mon DD afin que le boot de la SD utilise le répertoire / de mon DD.
    Mais sans SD, pas de boot. Je suis donc obligé de conserver ma SD dans le RPI3 (une SD fat32 avec le bootcode.bin, ne faisant rien de mieux).
    Je pense que malgrè tout, la carte SD ne subissant plus d’écritures s’en trouvera que mieux.

    Merci encore.

    Répondre
    1. Geo

      il faut effectivement conserver une SD pour démarrer, mais elle ne dois pas contenir de quoi démarrer avec (un OS).
      ensuite si j’ai bien compris, « bootcode.bin » est nécessaire uniquement pour reprogrammer l’OTP, on peut donc le supprimer de la SD ensuite (corrigez-moi si je me trompe)
      le problème vient peut-être du formatage de ton support USB, il faudrait que tu nous indique (si possible) l’alignement de la partition, le systeme de fichier utilisé (exFAT, NTFS, ext4, F2FS…), la distribution implanté (Raspian ?)

      Rufus fait moins de 1 Mo je t’invite à garder cet outil sous la mains… Microsoft se permet pas mal de choses sans te prévenir (comme effacer GRUB quand il le rencontre sur une installation), Win32DiskImager est un outils de Microsoft ^^’

      la partie -préparation du support USB- de l’article « Pitié pour la carte SD de votre framboise314 : Bootez sur un disque dur USB »

      >> si votre disque dur n’a jamais été utilisé sous Linux, il faudra le préparer pour cet usage.

      NB : ces 2 articles que j’ai liés enonce comment  » transférer l’OS du Pi vers le support USB. Tandis que l’article ci-présent indique plutôt comment faure une install fraîche sur un port USB

      Répondre
      1. dyox

        Bonjour,
        Je me permets de vous corriger. Je n’arrive pas à voir l’endroit où vous auriez pu lire et comprendre ça : « ensuite si j’ai bien compris, « bootcode.bin » est nécessaire uniquement pour reprogrammer l’OTP, on peut donc le supprimer de la SD ensuite ».
        J’avais dit : Reprogrammer l’OTP en ajoutant program_usb_boot_mode=1 à la fin du fichier config.txt
        Et si une personne démarre le MSD grâce au nouveau bootcode.bin, elle ne doit surtout pas l’effacer, c’est lui qui détient la séquence de boot !

        Répondre
        1. Geo

          (je me suis peut-etre mal exprimé) une question sur ce point… j’ai maintenant un doute :
          le fichier « config.txt », à travers sa ligne « program_usb_boot_mode=1 » permet bien d’activer la reprogrammation de l’OTP ? et non simplement l’OS dans la carte SD ?

          Le binaire « bootcode.bin » sert alors à modifier l’OTP ou bien à être lu à la place de l’OTP ?
          Dans le premier cas, une fois la modification apporté, plus besoin du binaire… dans le 2e cas le binaire fait office de lanceur d’amorce (boot load).

          PS: y a t-il un moyen de supprimer ses propre commentaires pour éviter de laisser des aides « erronés » ? ^^’

          Répondre
          1. dyox

            Déjà, la manipulation de l’OTP ne fonctionne que sur une v3 et peut ne pas fonctionner suivant les MSD, d’où le bootcode.bin qui « simule » temporairement cette reprogrammation.
            La manip de l’OTP n’est utile qu’une fois.
            Si bootcode.bin il y a, bootcode.bin toujours il y aura.

            Mais avant de dire qu’un MSD ne fonctionne pas, il y 4 étapes à faire !!!

  17. dyox

    Déjà, la manipulation de l’OTP ne fonctionne que sur une v3 et peut ne pas fonctionner suivant les MSD, d’où le bootcode.bin qui « simule » temporairement cette reprogrammation.
    La manip de l’OTP n’est utile qu’une fois.
    Si bootcode.bin il y a, bootcode.bin toujours il y aura.

    Mais avant de dire qu’un MSD ne fonctionne pas, il y 4 étapes à faire !!!

    Répondre
  18. thanks

    Bonjour,

    Juste par acquis de concience, Pour un PI2 nous n’aurons que le bootcode.bin et le fichier config.txt (pour max_usb_current=1) sur la SD.

    Cela est-il exacte ?

    Merci

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour
      si vous bootez sur une carte SD vous avez les mêmes fichiers que sur un pi3…
      y compris config.txt pour passer des infos lors du démarrage de Raspbian
      cordialement
      François

      Répondre

Laisser un commentaire

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

Complétez ce captcha SVP * Time limit is exhausted. Please reload CAPTCHA.