Entrar al entorno chroot

Es hora de entrar en el entorno chroot para instalar los paquetes que necesitamos. Antes de que puedas hacer chroot, sin embargo, necesitas cambiar al usuario root, pues sólo él puede usar el comando chroot.

Al igual que antes, asegurate de que la variable de entorno LFS es correcta ejecutando echo $LFS y verificando que muestre la ruta al punto de montaje de tu partición LFS, que es /mnt/lfs si seguiste nuestro ejemplo.

Hazte root y ejecuta el siguiente comando para entrar al entorno chroot:

chroot $LFS /tools/bin/env -i \
    HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
    /tools/bin/bash --login

La opción -i pasada al comando env limpiará todas las variables del chroot. Después de esto, solamente se establecen de nuevo las variables HOME, TERM, PS1 y PATH. La construcción TERM=$TERM fijará la variable TERM dentro del chroot al mismo valor que fuera del chroot, pues programas como vim y less la necesitan para funcionar correctamente. Si necesitas tener presentes otras variables, como CFLAGS o CXXFLAGS, éste es un buen sitio para establecerlas.

Desde este punto ya no es necesario utilizar la variable LFS porque todo lo que hagas estará restringido al sistema de ficheros LFS -- ya que lo que el intérprete de comandos piensa que es / en realidad es el valor de $LFS, que se le pasó al comando chroot.

Advierte que /tools/bin queda el último en el PATH. Esto significa que una herramienta temporal no volverá a usarse a partir de que se instale su versión final. Bueno, al menos cuando el intérprete de comandos no recuerda la localización de los binários ejecutados; por esta razón se desactiva un poco mas adelante su tabla interna de rutas.

Debes asegurarte de que todos los comandos que aparecen en el resto de este y los siguientes capítulos son ejecutados dentro del entorno chroot. Si por alguna razón abandonas este entorno (tras un reinicio, por ejemplo), debes recordar entrar en el chroot y montar los sistemas de ficheros proc y devpts (como explicaremos más tarde) antes de seguir con las instalaciones.

Ten en cuenta que en la línea de entrada de comandos de bash pondrá: "I have no name!" ("¡No tengo nombre!"). Esto es normal pues el fichero /etc/passwd aún no ha sido creado.