Linux From Scratch
Linux From Scratch (Linux à partir de rien, souvent abrégé en LFS) est un projet lancé par l'informaticien néerlandais Gerard Beekmans (né en 1979) et actuellement maintenu par Bruce Dubbs, qui permet de construire sa propre distribution Linux à partir des sources des logiciels et de comprendre le fonctionnement interne d'un système GNU/Linux[2].
Linux From Scratch | |
Famille | Systèmes Unix |
---|---|
Langues | Anglais |
État du projet | en développement |
Plates-formes | IA-32, x86-64[1] |
Entreprise / Fondateur |
Gerard Beekmans |
Entreprise / DĂ©veloppeur |
Gerard Beekmans, puis Bruce Dubbs |
Licence | Licence Creative Commons et Licence MIT |
États des sources | Open source |
Première version | 1.0 () |
Dernière version stable | 11.3 () |
MĂ©thode de mise Ă jour | Compilation des sources |
Interface utilisateur par défaut | Bash (par défaut) |
Environnement de bureau | Aucun (par défaut) |
Gestionnaire de paquets | Aucun (compilation manuelle des sources) |
Site web | linuxfromscratch.org |
Description
Le projet Linux From Scratch est un document (livre) relatant les diverses étapes pour créer un système Linux.
L'argument avancé par le projet en faveur de LFS est que l'on obtient un système compact, optimisé, sûr, personnalisé, et que l'on comprend mieux le fonctionnement d'un système Linux. Linux From Scratch se différencie des autres systèmes Linux par le fait qu'il faut compiler chaque programme, cette méthode étant naturellement plus longue qu'installer un système pré-compilé.
Le projet publie en moyenne tous les six mois une nouvelle version du livre. Une version de développement du livre est également disponible, mise à jour régulièrement. Le livre a à l'origine été écrit en anglais mais a été traduit dans d'autres langues comme le français, l'italien ou l'allemand.
En partant d'une distribution Linux existante (installée sur l'ordinateur ou depuis un Live CD), l'utilisateur compile tous les programmes sources essentiels dans une partition distincte, en utilisant les outils de compilation de la distribution hôte. Puis, il se place dans la dite partition, et compile tous les programmes, un à un, mais avec les outils de compilation produits à l'étape précédente.
Il était possible d'utiliser le Live CD proposé par LFS jusqu'à la version 7.0 pour construire le système, il n'est désormais plus maintenu.
Pour garder LFS simple et concis, Beyond Linux From Scratch (BLFS) est disponible afin d'aller plus loin dans la personnalisation du système minimaliste produit avec LFS. BLFS contient des instructions pour mettre en place entre autres le serveur X, la connectivité réseau, le son, et la gestion des imprimantes.
Liste des composants LFS
Voici la liste des programmes sources inclus dans la version 9.0 (sortie le 01/09/19) de LFS :
- Acl 2.2.53
- Attr 2.4.48
- Autoconf 2.69
- Automake 1.16.1
- Bash 5.0
- Bc 2.1.3
- Binutils 2.32
- Bison 3.4.1
- Bzip2 1.0.8
- Check 0.12.0
- Coreutils 8.31
- DejaGNU 1.6.2
- Diffutils 3.7
- Eudev 3.2.8
- E2fsprogs 1.45.3
- Expat 2.2.7
- Expect 5.45.4
- File 5.37
- findutils 4.6.0
- Flex 2.6.4
- Gawk 5.0.1
- GCC 9.2.0
- GDBM 1.18.1
- Gettext 0.20.1
- Glibc 2.30
- GMP 6.1.2
- Gperf 3.1
- Grep 3.3
- Groff 1.22.4
- GRUB 2.04
- Gzip 1.10
- Iana-Etc 2.30
- Inetutils 1.9.4
- Intltool 0.51.0
- IPRoute2 5.2.0
- Kbd 2.2.0
- Kmod 26
- Less 551
- LFS-Bootscripts 20190524
- Libcap 2.27
- Libelf 0.177
- Libtool 2.4.6
- Libffi 3.2.1
- Libpipeline 1.5.0
- Libtool 2.4.6
- Linux 5.2.8
- GNU M4 1.4.18
- Make 4.2.1
- Man-DB 2.8.6.1
- Man-pages 5.02
- Meson 0.51.1
- GNU MPC 1.1.0
- MPFR 4.0.2
- Ncurses 6.1
- Ninja 1.9.0
- Openssl 1.1.1c
- Patch 2.7.6
- Perl 5.30.0
- Pkg-config 0.29.2
- Procps 3.3.15
- Python 3.7.4
- Psmisc 23.1
- Readline 8.0
- Sed 4.7
- Shadow 4.7
- Tar 1.32
- Tcl 8.6.9
- Texinfo 6.6
- Time Zone Data 2019b
- Util-linux 2.34
- Vim 8.1.1846
- XML::Parser 2.44
- Xz Utils 5.2.4
- Zlib 1.2.11
Certains programmes ne sont présents que dans la version Systemd ou la version Sysvinit. Pour la version Systemd on peut trouver :
Et pour la version SysVinit :