Establece un buen entorno de trabajo mediante la creación de dos
        nuevos ficheros de inicio para el intérprete de comandos bash. Estando en el sistema como
        usuario lfs, ejecuta los siguientes
        comandos para crear un .bash_profile
        nuevo:
      
cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF
      
        Cuando entras como usuario lfs el
        intérprete de comandos inicial es un intérprete de ingreso que lee el /etc/profile de tu anfitrión (que posiblemente
        contenga algunos ajustes de variables de entorno) y luego lee
        .bash_profile. El comando exec env -i.../bin/bash del fichero
        .bash_profile sustituye el intérprete
        de comandos en ejecución por uno nuevo con un entorno completamente
        vacío, excepto por las variables HOME,
        TERM y PS1.
        Esto asegura que en el entorno de construcción no aparezcan variables
        de entorno indeseadas o dañinas procedentes del sistema anfitrión. La
        técnica aquí usada consigue el objetivo de asegurar un entorno
        limpio.
      
        La nueva instancia del intérprete comandos es un intérprete de
        no ingreso que no lee los
        ficheros /etc/profile o .bash_profile, pero en su lugar lee el fichero
        .bashrc. Crea ahora el fichero
        .bashrc:
      
cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL PATH
EOF
      
        El comando set +h
        desactiva la función de tablas de dispersión (hash) de bash. Normalmente, esta función es
        muy útil: bash usa una
        tabla de dispersión para recordar la ruta completa de los
        ejecutables, evitando búsquedas reiteradas en el PATH para encontrar el mismo binario. Sin embargo, las
        nuevas herramientas deberían utilizarse a medida que son instaladas.
        Al desactivar esta característica, el intérprete de comandos siempre
        buscará en el PATH cuando deba ejecutarse
        un programa. Por tanto, el intérprete de comandos encontrará las
        herramientas recién compiladas en $LFS/tools tan pronto como estén disponibles, sin
        recordar una anterior versión del mismo programa en una ubicación
        diferente.
      
        Establecer la máscara de creación de ficheros (umask) a 022 asegura
        que los ficheros y directorios de nueva creación sólo pueden ser
        escritos por su propietario, pero son legibles y ejecutables por
        cualquiera (asumiendo que los modos por defecto son usados por la
        llamada open(2) del sistema, los nuevos
        ficheros tendrán permisos 644 y los directorios 755).
      
        La variable LFS debe establecerse al punto
        de montaje elegido.
      
        La variable LC_ALL controla la
        localización de ciertos programas, haciendo que sus mensajes sigan
        las convenciones para un determinado país. Si el sistema anfitrión
        utiliza una versión de Glibc anterior a la 2.2.4, tener LC_ALL establecida a algo diferente a
        “POSIX” o “C” (durante el siguiente capítulo) puede causar
        problemas si sales del entorno chroot e intentas regresar más tarde.
        Establecer LC_ALL a “POSIX” o “C” (ambos son equivalentes) asegura que todo
        funcionará como se espera dentro del entorno chroot.
      
        Al añadir /tools/bin al principio del
        PATH, todos los programas instalados en el
        Capítulo 5 son
        inmediatamente detectados por el intérprete de comandos tras su
        instalación. Esto, combinado con la desactivación de las tablas de
        dispersión, limita el riesgo de utilizar los antiguos programas del
        anfitrión cuando dichos pogramas ya están disponibles en el entorno
        del capítulo 5.
      
Finalmente, para tener el entorno preparado por completo para construir las herramientas temporales, carga el perfil de usuario recién creado:
source ~/.bash_profile