Gola Bootlace : installer n’importe quel système sur le réseau, sans clé USB
Date de publication

Nous publions aujourd’hui Gola Bootlace, un programme gratuit et open source qui transforme un dossier de fichiers ISO en menu de démarrage pour tous les PC de votre réseau. Branchez le PC au câble réseau, choisissez « démarrer sur le réseau », sélectionnez Windows 11, Ubuntu ou un outil de dépannage dans le menu, et c’est parti. Pas de clé USB, et pas de tiroir rempli de clés.
Bootlace est libre et open source, et il est jeune : nous cherchons des testeurs et des contributeurs. Vous trouverez comment nous aider à la fin de cet article.
Pourquoi nous l’avons créé
Installer et dépanner des ordinateurs, c’est notre travail quotidien : nous connaissons par cœur la routine des clés USB. Trouver la bonne clé, constater qu’elle contient le Windows de l’an dernier, la réécrire, attendre, la brancher, attendre encore. Multipliez par vingt PC et dix systèmes différents : vous obtenez un tiroir de clés, dont la moitié sont périmées, et des installations qui ne vont pas plus vite que la clé la plus lente du tiroir.
Le démarrage par le réseau est la solution classique, et tous les PC récents le gèrent. Ce que nous voulions, c’était une version qu’un technicien d’atelier peut faire tourner sans être ingénieur réseau : déposer des ISO dans un dossier, les voir dans un menu, les lancer telles quelles. Nous n’en avons pas trouvé qui le fasse aussi bien pour Windows que pour Linux, alors nous l’avons écrite, et nous la publions en open source pour que tous ceux qui installent des PC puissent l’utiliser, la vérifier et l’améliorer.
Ce qu’il fait, en termes simples
Bootlace tourne sur un ordinateur qui reste allumé : un petit serveur, un PC de récupération, un conteneur Proxmox. Il regarde dans un dossier de fichiers ISO et, quand un PC du même réseau demande à démarrer par le réseau (c’est ce qu’on appelle le PXE), il lui répond avec un menu de tout ce que contient le dossier. Choisissez une entrée et le PC la lance, en lisant l’ISO sur le serveur à travers le réseau.
• Un dossier plutôt qu’un tiroir. Pour ajouter un ISO, copiez le fichier ; pour le retirer, supprimez-le.
• Le même menu sur tous les PC, en UEFI ou en BIOS ancien, sans autre réglage sur le PC que « démarrer sur le réseau ».
• Les ISO démarrent tels quels. Rien n’est décompressé, modifié ni écrit sur les disques du PC en cours de route.
• Rien à changer sur le routeur. Bootlace ne répond qu’aux PC qui demandent un démarrage réseau et laisse le serveur DHCP du réseau tranquille.
• Arrêtez le programme et il ne reste rien sur les PC.
Ce qu’il sait démarrer
Windows 11 et Windows Server : l’installation lit ses fichiers sur un petit partage en lecture seule que le serveur fournit lui-même ; le PC s’installe donc directement depuis le réseau. La plupart des installateurs et systèmes live Linux : Ubuntu, Debian, Fedora, Arch, Alpine, Kali, Proxmox VE, TrueNAS et bien d’autres. Les outils de dépannage et de maintenance : SystemRescue, Clonezilla, GParted, Rescuezilla, tests de mémoire.

Les systèmes Linux live lisent leur ISO sur le serveur au fur et à mesure (comme un disque réseau) au lieu de la copier dans la mémoire du PC : le PC n’a donc pas besoin de place pour l’ISO entier. Un ISO que Bootlace ne reconnaît pas par son nom n’est pas refusé : il lit les menus de démarrage de l’ISO pour deviner ce que c’est et, à défaut, le présente au PC comme un CD-ROM réseau.

Nous ne marquons un ISO comme fonctionnel qu’après l’avoir vu arriver jusqu’à son installateur ou son bureau dans notre laboratoire de test. La liste de ce que nous avons essayé, avec les résultats, est publique : la liste de compatibilité. Certains ne fonctionnent pas encore (pfSense en UEFI, par exemple) et la liste le dit.
La page de gestion
Tout se gère depuis une page web sur le serveur ; une fois le programme lancé, il n’y a plus de ligne de commande à utiliser.
Voir ce qui se passe
Le tableau de bord montre ce qui tourne et comment un PC joint le serveur.

Vérifier que ça marche avant d’aller au PC
La page Serveur montre chaque service et propose un auto-test en un clic qui vérifie chaque étape que traverse un PC : le menu, le téléchargement de l’ISO, le TFTP, le partage Windows et le disque réseau. Elle mesure aussi la vitesse du disque de la bibliothèque et cherche d’autres serveurs du réseau qui répondraient eux aussi au PXE, première cause d’échec d’un démarrage réseau.

Connaître ses ISO et ses PC
La page Bibliothèque reçoit vos ISO (un envoi interrompu reprend là où il s’était arrêté) ou télécharge et vérifie lui-même un fichier à partir d’une adresse web. Sur la page ISO, vous renommez une entrée, la masquez, la protégez par un mot de passe de démarrage, ajoutez des arguments au noyau, activez un démarrage détaillé ou sur console série pour le débogage, ou consultez les commandes exactes que reçoit un PC.

La page PC liste chaque PC qui a demandé un menu, avec le nom que vous lui donnez, son historique (exportable en CSV), un bouton pour le réveiller par le réseau, et des règles par modèle, fabricant ou plateforme (« tous les HP démarrent sur leur propre disque »).

Régler le menu
La page Menu règle le délai d’attente, ce qui démarre tout seul, les fichiers à garder hors du menu et, pour installer Windows 11 sur de vieux PC, les contrôles de l’installation à ignorer.

Nouveautés de la version 0.2.0
• Un fichier journal sur le disque, téléchargeable depuis la page web.
• Un démarrage qui échoue ne laisse plus le PC bloqué : il revient au menu avec un message.
• Des noms pour les PC, un historique par PC exportable en CSV, et le réveil par le réseau (Wake-on-LAN).
• Des règles par modèle, fabricant ou plateforme, en plus des règles pour un seul PC.
• Un mot de passe de démarrage par ISO, et des commutateurs pour un démarrage détaillé ou sur console série.
• Un auto-test, un test de vitesse de la bibliothèque et la recherche d’autres serveurs PXE sur le réseau.
• Sauvegarde et restauration des réglages (une copie est aussi gardée dans la bibliothèque), et un guide de premier démarrage.
• Des envois reprenables, et un cache qui supprime les entrées les moins récemment utilisées quand il est plein.
• Des réglages fins : motifs pour garder des fichiers hors du menu, taille de bloc et fenêtre TFTP, et un commutateur pour ignorer les contrôles de l’installation de Windows 11.
• Une réponse pour les PC qui démarrent en UEFI HTTP boot.
• Des paquets .deb et .rpm.
• Des tests de fuzzing sur les lecteurs d’ISO et de menus de démarrage, qui ont permis de trouver et corriger plusieurs plantages.
Le lancer en quelques minutes
Le plus rapide, si vous avez Proxmox : lancez cette commande sur l’hôte Proxmox. Elle crée un petit conteneur Debian, y installe Bootlace et affiche son adresse et son mot de passe.
1bash -c "$(curl -fsSL https://raw.githubusercontent.com/ghazichaieb/gola-bootlace/main/tools/proxmox/bootlace-lxc.sh)"
Pas de Proxmox ? Choisissez ce qui convient à l’ordinateur dont vous disposez : toutes les options donnent le même programme et la même page web.
• Docker (sur un hôte Linux) : l’image ghazichaieb/gola-bootlace avec le réseau de l’hôte. Le README contient un fichier compose prêt à l’emploi.
• Un paquet Linux : téléchargez le .deb ou le .rpm sur la page de la version et lancez apt install ./bootlace-*.deb ; il installe un service systemd.
• Windows : décompressez l’archive et lancez bootlace.exe serve -iso-dir D:\isos pour un dépannage rapide.
Redémarrez ensuite un PC et choisissez le démarrage par le réseau (en général F12, F11 ou Échap à l’allumage) : le menu apparaît. Au premier lancement, Bootlace invente un mot de passe pour la page web et l’affiche une seule fois dans son journal.
À savoir
• C’est encore jeune. La version 0.2.0 a été testée dans un laboratoire de machines virtuelles (Proxmox et Hyper-V) et sur quelques PC réels. Sur une carte mère de 2012, cela fonctionne en mode BIOS ancien mais pas encore en mode UEFI ; nous cherchons pourquoi. C’est justement pour cela que nous avons besoin de testeurs.
• Le PC doit être relié par un câble. Le démarrage réseau ne fonctionne pas en Wi-Fi.
• Le Secure Boot doit être désactivé sur le PC, sauf pour Windows et Ubuntu, qui ont un moyen de passer.
• Le dossier de la bibliothèque doit être accessible en écriture : Bootlace y garde un dossier caché .bootlace.
• Une installation par le réseau va aussi vite que le réseau. Le gigabit suffit.
• Il est conçu pour un réseau local. Il ne répond qu’aux adresses privées, et ses services de disque réseau et d’iSCSI n’ont pas d’identification : n’ouvrez jamais ses ports vers Internet, et utilisez un VPN pour atteindre le réseau de l’extérieur.
• Un système lancé depuis le réseau ne se comporte pas exactement comme s’il démarrait d’un disque : le réseau doit rester actif, et quelques fonctions qui demandent la clé elle-même (le stockage persistant de Tails, par exemple) sont absentes. Cette page les énumère.
Open source : essayez-le, cassez-le, améliorez-le
Bootlace est publié sous licence GPL-3.0-or-later. Chaque version est signée, avec des instructions pour vérifier la signature, et se présente sous forme de téléchargements Linux et Windows, de paquets .deb et .rpm et d’une image Docker multi-architecture.
• Code source et tickets : github.com/ghazichaieb/gola-bootlace
• Télécharger la version 0.2.0 : la page de la version
• Image Docker : Docker Hub
• Documentation : l’interface web, son fonctionnement, ce qu’il demande
Nous serions ravis de recevoir votre aide, quel que soit votre niveau :
• Testez-le sur votre propre matériel et dites-nous ce qui s’est passé, en bien ou en mal : quel PC ou quelle carte mère, UEFI ou BIOS, quel ISO. C’est sur de vrais PC qu’il a le plus besoin d’être testé.
• Signalez les ISO qui ne démarrent pas, ou qui démarrent autrement que prévu : ouvrez un ticket avec le nom de l’ISO et ce que vous avez vu. C’est ainsi que la liste de compatibilité s’allonge.
• Contribuez : corrections, prise en charge d’un autre système, documentation, traductions de l’interface web. Les pull requests sont les bienvenues, et le guide de contribution explique comment faire.
• Faites passer le mot à tous ceux qui installent des PC, par métier ou par passion.
Vous voulez qu’on l’installe pour votre bureau ou votre atelier, ou qu’on s’occupe des installations à votre place ? Contactez-nous.