Introduction

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, ceci incluant 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 pour disposer de ces outils.

Comme alternative à l'installation d'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, correctifs et une copie de ce livre. Une fois que vous avez le CD, aucune connexion réseau et aucun téléchargement supplémentaire n'est 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 un emplacement 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 discute de la configuration pour un environnement de travail approprié. Merci de lire le Chapitre 4 avec attention car il explique plusieurs problèmes importants dont le développeur doit être au courant avant de commencer à travailler sur le Chapitre 5 et les chapitres suivants.

Le Chapitre 5 explique l'installation d'un ensemble de paquets qui formera la suite de développement de base (ou ensemble d'outils) utilisé pour construire le système réel 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 aussi à 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 deuxième fois). La prochaine étape consiste à construire Glibc, la bibliothèque C. Glibc sera compilé par les programmes de l'ensemble d'outils, construits lors de la première passe. Ensuite, une seconde passe de l'ensemble d'outils sera lancée. Cette fois, l'ensemble d'outils sera lié dynamiquement avec la Glibc nouvellement construite. Les paquets restants du Chapitre 5 seront construits en utilisant l'ensemble d'outils de cette deuxième passe. Lorsque ceci sera fait, le processus d'installation de LFS ne dépendra plus de la distribution hôte, à l'exception du noyau en cours d'exécution.

Alors que ceci pourrait sembler être beaucoup de travail pour isoler le nouveau système de la distribution hôte, une explication technique complète est fournie au début du Chapitre 5.

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 initialisé à la partition LFS. Ceci ressemble au redémarrage et à l'instruction au noyau de monter la partition LFS comme partition racine. Le système ne redémarre pas réellement mais change la racine parce que la création d'un système démarrable (amorçable) réclame un travail supplémentaire qui n'est pas encore nécessaire. L'avantage principal 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 continuer à 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 l'implémentation des étapes de ce livre, l'ordinateur sera prêt à redémarrer dans le nouveau système LFS.

Ceci expose rapidement le processus. Des informations détaillées sur chaque étape sont discutées dans les chapitres suivants avec les descriptions des paquets. Les éléments qui peuvent sembler compliqués seront clarifiés et tout ira à sa place, alors que le lecteur s'embarquera pour l'aventure LFS.