1. Introduction

1.1. Comment construire un système LFS

Le système LFS sera construit en utilisant une distribution Linux déjà installée (telle que Debian, Mandrake, Red Hat ou SuSE). Ce système Linux existant (l'hôte) sera utilisé comme point de départ pour fournir certains programmes nécessaires, dont un compilateur, un éditeur de liens et un shell, pour construire le nouveau système. Sélectionnez l'option « développement » (development) lors de l'installation de la distribution hôte pour disposer de ces outils.

Si vous ne désirez pas installer une distribution séparée complète sur votre machine, vous pouvez utiliser le LiveCD Linux From Scratch. Le CD fonctionne bien en tant que système hôte, fournissant tous les outils dont vous avez besoin pour suivre les instructions de ce livre avec succès. De plus, il contient les paquetages sources, les correctifs et une copie de ce livre. Une fois que vous avez le CD, plus aucune connexion réseau n'est donc nécessaire. Pour plus d'informations sur le LiveCD LFS ou pour télécharger une copie, visitez http://www.linuxfromscratch.org/livecd/.

Le Chapitre 2 de ce livre décrit comment créer une nouvelle partition native Linux et un système de fichiers, c'est-à-dire l'endroit où le nouveau système LFS sera compilé et installé. Le Chapitre 3 explique quels paquets et correctifs ont besoin d'être téléchargés pour construire un système LFS et comment les stocker sur le nouveau système de fichiers. Le Chapitre 4 traite de la configuration d'un environnement de travail approprié. Merci de lire le Chapitre 4 avec attention, car il présente plusieurs problèmes importants dont le développeur doit être au courant avant de commencer à s'attaquer au Chapitre 5 et aux chapitres suivants.

Le Chapitre 5 détaille l'installation d'un ensemble de paquets qui formeront la suite de développement de base (ou ensemble d'outils) utilisée pour construire le système final dans le Chapitre 6. Certains de ces paquets sont nécessaires pour résoudre des dépendances circulaires  par exemple, pour compiler un compilateur, vous avez besoin d'un compilateur.

Le Chapitre 5 montre également à l'utilisateur comment construire une première passe de l'ensemble d'outils, incluant Binutils et GCC (première passe signifiant basiquement que ces deux paquets principaux seront installés une seconde fois). La prochaine étape consiste à construire Glibc, la bibliothèque C, qui sera compilée à l'aide des outils construits lors de la première passe. Ensuite, une seconde passe de l'ensemble d'outils sera construite. Cette fois, l'ensemble d'outils sera lié dynamiquement à la Glibc nouvellement construite. Les paquets restants du Chapitre 5 seront construits en utilisant la seconde passe de l'ensemble d'outils. Lorsque ceci sera fait, le processus d'installation de LFS sera indépendant de la distribution hôte, à l'exception du noyau en cours d'exécution.

Cet effort pour isoler le nouveau système de la distribution hôte peut sembler excessif mais une explication technique complète est fournie dans Section 5.2, « Notes techniques sur l'ensemble d'outils ».

Dans le Chapitre 6, le système LFS complet est construit. Le programme chroot (changement de racine) est utilisé pour entrer dans un environnement virtuel et pour lancer un nouveau shell dont le répertoire racine sera la partition LFS. Ceci s'apparente à redémarrer l'ordinateur et à demander au noyau de monter la partition LFS en tant que partition racine. Le système ne redémarre pas réellement mais change la racine, car la création d'un système amorçable réclame un travail supplémentaire qui n'est pas encore nécessaire. Le principal avantage est que « chroot » permet à l'utilisateur de continuer à utiliser l'hôte pendant la construction de LFS. En attendant que la compilation d'un paquet se termine, un utilisateur peut passer sur une console virtuelle (VC) différente ou un bureau X et utiliser son ordinateur comme d'habitude.

Pour terminer l'installation, les scripts de démarrage sont configurés dans le Chapitre 7, le noyau et le chargeur de démarrage sont configurés dans le Chapitre 8. Le Chapitre 9 contient des informations sur la suite de l'expérience LFS après ce livre. Après avoir accompli toutes les étapes de ce livre, l'ordinateur sera prêt à redémarrer sous le nouveau système LFS.

Voilà pour un court résumé du processus. Des informations détaillées sur chaque étape sont présentées dans les chapitres suivants, avec les descriptions des paquets. Les éléments qui peuvent sembler compliqués seront clarifiés et tout se mettra en place au fur et à mesure de l'aventure LFS.