- Floppinux, une distribution Linux légère capable de démarrer depuis une seule disquette (1.44MB), a été mise à jour avec l’édition 2025 (v0.3.1)
- La nouvelle version repose sur le noyau Linux 6.14.11 et BusyBox 1.36.1, et inclut un stockage persistant (264KB) ainsi qu’une compatibilité avec du matériel plus récent
- Elle peut fonctionner avec un processeur Intel 486DX (33MHz) ou supérieur et seulement 20MB de RAM, et prend en charge un éditeur de texte (vi) ainsi que les commandes de base de manipulation de fichiers
- Elle fonctionne à la fois sur du matériel réel et dans des émulateurs (qemu, Bochs, 86Box), et est conçue pour que l’utilisateur construise lui-même le noyau et la toolchain
- Depuis sa première publication il y a 4 ans, elle est utilisée à des fins pédagogiques et expérimentales ; cette édition met l’accent sur le maintien d’un noyau récent et la mise à jour du tutoriel d’apprentissage
Présentation du projet
- Floppinux vise à construire un système Linux minimal capable de démarrer depuis une seule disquette
- Il est conçu sous la forme d’un atelier pédagogique similaire à “Linux From Scratch”, afin que l’utilisateur puisse le modifier et l’étendre lui-même
- La distribution obtenue fournit un environnement terminal en mode texte, permettant l’édition de fichiers et l’écriture de scripts simples
- L’espace de stockage restant est de 264KB, ce qui permet d’enregistrer directement sur la disquette les fichiers créés par l’utilisateur
Fonctions principales et configuration requise
- Prise en charge du démarrage sur une seule disquette, du noyau récent (6.14) et des CPU x86 32 bits (486DX ou plus)
- Comprend un éditeur de texte (vi), les commandes de base de manipulation de fichiers (
cat, cp, mv, rm, etc.) et des fonctions de scripting simple
- Les fichiers peuvent être enregistrés sur la disquette grâce au stockage persistant (persistent storage)
- Configuration matérielle minimale : Intel 486DX 33MHz, 20MB de RAM, lecteur de disquette interne
Configuration du noyau
- La version Linux 6.14.11 est utilisée comme dernier noyau prenant entièrement en charge les CPU i486
- La configuration du noyau est centrée sur les fonctions minimales nécessaires au démarrage, avec notamment initramfs compressé en XZ, prise en charge de l’exécution ELF et système de fichiers FAT
- La prise en charge de TTY, des périphériques bloc, de
/proc et du système de fichiers sysfs est activée
- Le résultat de la compilation du noyau est généré sous la forme d’une bzImage (881KiB)
Environnement de build et toolchain
- Le build a été réalisé sur Omarchy Linux (OS 64 bits basé sur Arch), mais la même procédure peut être appliquée sur tout système compatible POSIX
- Le compilateur croisé i486-linux-musl-cross est utilisé pour construire la cible 32 bits
- qemu est utilisé comme environnement d’émulation, Bochs pour le débogage, et 86Box constitue une alternative plus lente
Ensemble d’outils basé sur BusyBox
- La version BusyBox 1.36.1 est utilisée et fournit un ensemble léger de commandes remplaçant les utilitaires GNU
- Principales commandes sélectionnées : cat, cp, df, echo, ls, mkdir, mv, rm, sync, vi, mount, umount, clear, test
- La compilation en binaire statique (static binary) supprime les dépendances aux bibliothèques partagées
- Après la compilation de BusyBox, le système de fichiers racine généré (rootfs.cpio.xz) a une taille de 137KiB
Système de fichiers et configuration d’initialisation
- Comprend une structure minimale de répertoires, un message de bienvenue (welcome), inittab et un script d’initialisation rc
- Le script rc monte
/proc et /sys, crée ensuite le répertoire /home, puis monte la disquette sur /mnt
- Au démarrage, après l’affichage d’une bannière de bienvenue, le système entre dans le shell (/bin/sh)
- Les messages de démarrage et les paramètres du noyau sont définis via la configuration syslinux.cfg
APPEND root=/dev/ram rdinit=/etc/init.d/rc console=tty0 tsc=unstable
Création de l’image de démarrage
- Création d’une image de disquette de 1.44MB (
floppinux.img), puis formatage et installation du bootloader (syslinux)
- Le noyau, le système de fichiers racine et les fichiers de configuration sont copiés dans l’image
- Après des tests de démarrage avec qemu, l’image peut être écrite sur une vraie disquette
- Un avertissement signale le risque de perte de données en cas de sélection du mauvais lecteur
Résumé final
- Version : 0.3.1 (décembre 2025)
- Noyau : 6.14.11
- BusyBox : 1.36.1
- Taille de l’image : 1.44MiB
- Espace restant : environ 253KiB
- Commandes prises en charge : manipulation de fichiers (
cat, cp, mv, rm, ls, mkdir), administration système (df, sync, mount, umount), traitement de texte (echo, more), éditeur (vi)
Intérêt
- Floppinux est une distribution ultra-légère optimisée pour apprendre la structure du noyau Linux et le processus de démarrage
- Elle parvient à faire tenir sur une seule disquette un environnement Linux complet capable de fonctionner sur du matériel réel
- Elle peut servir de plateforme d’exemple utile pour l’éducation, les expérimentations sur systèmes rétro et l’initiation au développement embarqué
Aucun commentaire pour le moment.