6.4. Betreten der chroot-Umgebung

Es ist nun an der Zeit, die chroot-Umgebung zu betreten und mit der Installation der benötigten Pakete zu beginnen. Immer noch als root führen Sie das folgende Kommando aus. Damit betreten Sie die neue kleine Welt, die zur Zeit nur mit temporären Werkzeugen ausgestattet ist:

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 +h

Die an env übergebene Option -i löscht alle Variablen in der chroot-Umgebung. Danach werden nur die Variablen HOME, TERM, PS1 und PATH wieder gesetzt. TERM=$TERM setzt die Variable TERM in der chroot-Umgebung auf den gleichen Wert wie außerhalb von chroot, diese Variable wird für das korrekte Funktionieren von Programmen wie vim und less benötigt. Wenn Sie weitere Variablen wie CFLAGS oder CXXFLAGS benötigen, ist dies ein guter Platz, um sie erneut zu setzen.

Von nun an brauchen Sie die Variable LFS nicht mehr, denn alle weiteren Befehle sind auf Ihr LFS beschränkt. Das was die laufende Shell für den Ordner / hält, ist in Wirklichkeit der Wert von $LFS, den Sie chroot oben als Parameter übergeben haben.

Beachten Sie, dass /tools/bin am Ende der Variable PATH steht. Das bewirkt, dass ein temporäres Werkzeug nicht mehr benutzt wird, sobald seine endgültige Version installiert ist. Zumindest, wenn die Shell sich nicht die Speicherorte von ausführbaren Dateien merkt — aus diesem Grund wird die Hash-Funktion der bash mit der Option +h abgeschaltet.

Die Eingabeaufforderung der Bash wird I have no name! ausgeben. Das ist normal und liegt daran, dass die Datei /etc/passwd derzeit noch fehlt. Mit Hilfe dieser Datei findet nämlich auch die Zuordnung von Benutzer-IDs zu Benutzernamen statt.

[Anmerkung]

Anmerkung

Sie müssen alle Kommandos in den folgenden Kapiteln in der chroot-Umgebung ausführen. Wenn Sie die chroot-Umgebung aus irgendeinem Grund verlassen müssen (zum Beispiel wegen einem Neustart), dann denken Sie daran, die virtuellen Kernel-Dateisysteme wie in Kapitel Abschnitt 6.2.2, „Einhängen und Füllen von /dev“ und Abschnitt 6.2.3, „Einhängen der virtuellen Kernel-Dateisysteme“ erneut einzubinden und die chroot-Umgebung wieder zu betreten, bevor Sie mit der Installation fortfahren.