7.4. Entrer dans l'environnement chroot

Maintenant que tous les paquets requis pour construire le reste des outils nécessaires sont sur le système, il est temps d'entrer dans l'environnement chroot pour finir d'installer les outils temporaires restant. Nous utiliserons aussi cet environnement pour installer le système final. En tant que root, lancez la commande suivante pour entrer dans ce petit monde peuplé seulement, pour le moment, des outils temporaires :

chroot "$LFS" /usr/bin/env -i   \
    HOME=/root                  \
    TERM="$TERM"                \
    PS1='(lfs chroot) \u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin \
    /bin/bash --login +h

L'option -i donnée à la commande env effacera toutes les variables de l'environnement chroot. Après cela, seules les variables HOME, TERM, PS1 et PATH sont de nouveau initialisées. La construction TERM=$TERM initialisera la variable TERM à l'intérieur du chroot avec la même valeur qu'à l'extérieur ; cette variable est nécessaire pour que des programmes comme vim et less fonctionnent correctement. Si vous avez besoin de la présence d'autres variables, telles que CFLAGS or CXXFLAGS, c'est le bon moment pour les initialiser de nouveau.

À partir de maintenant, il n'est plus nécessaire d'utiliser la variable LFS parce que tout le travail sera restreint au système de fichiers LFS, car on a dit au shell Bash que $LFS est maintenant le répertoire racine (/).

Remarquez que /tools/bin n'est pas dans le PATH. Ceci signifie que la chaîne d'outils croisée ne sera plus utilisé dans l'environnement chroot. Ceci survient quand le shell ne se « rappelle » plus des emplacements des binaires exécutés— Pour cette raison, le hachage est désactivé en passant l'option +h à bash.

Remarquez que l'invite bash dira I have no name!. Ceci est normal car le fichier /etc/passwd n'a pas encore été créé.

[Note]

Note

Il est important que toutes les commandes pour le reste de ce chapitre et les chapitres suivants soient lancées à l'intérieur de l'environnement chroot. Si vous devez quitter cet environnement pour une quelconque raison (un redémarrage par exemple), assurez-vous que les systèmes de fichiers virtuels sont montés comme expliqué dans Section 7.3.2, « Monter et peupler /dev » et Section 7.3.3, « Monter les systèmes de fichiers virtuels du noyau » et entrez de nouveau dans chroot avant de continuer les installations.