6.5. Benutzer und Gruppen einrichten

Damit root sich am System anmelden kann und damit der Name „root“ der richtigen Benutzer-ID zugeordnet werden kann, müssen die entsprechenden Einträge in /etc/passwd und /etc/group vorhanden sein.

Erzeuge die /etc/passwd mit dem folgenden Kommando:

cat > /etc/passwd << "EOF"
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/dev/null:/bin/false
nobody:x:99:99:Unprivilegierter Benutzer:/dev/null:/bin/false
EOF

Das tatsächliche Passwort für root (Das „x“ ist hier nur Platzhalter) wird erst später gesetzt.

Erstelle die /etc/group mit dem folgenden Kommando:

cat > /etc/group << "EOF"
root:x:0:
bin:x:1:
sys:x:2:
kmem:x:3:
tty:x:4:
tape:x:5:
daemon:x:6:
floppy:x:7:
disk:x:8:
lp:x:9:
dialout:x:10:
audio:x:11:
video:x:12:
utmp:x:13:
usb:x:14:
cdrom:x:15:
mail:x:34:
nogroup:x:99:
EOF

Die erzeugten Gruppen sind nicht Teil irgendeines Standards - es sind die Gruppen, die Udev in diesem Kapitel benutzt. Neben der Gruppe root mit der GID 0 schlägt die LSB (Linux Standard Base http://www.linuxbase.org) nur die Gruppe bin mit der GID 1 vor. Alle anderen Gruppennamen und GIDs können durch den Anwender frei gewählt werden, weil gut geschriebene Pakete sich nicht auf GID-Nummern verlassen sollten, sondern den Gruppennamen verwenden.

Die Meldung „I have no name!“ wirst Du los, indem Du eine neue Shell startest. Die Auflösung der Benutzer- und Gruppennamen funktioniert sofort nach dem Erstellen von /etc/passwd und /etc/group, weil Du in Kapitel 5 eine vollständige Glibc installiert hast:

exec /tools/bin/bash --login +h

Beachte die Option +h. Durch sie wird das interne Pfad-Hashing der Bash abgeschaltet. Ohne diese Anweisung würde sich bash die Pfade zu ausführbaren Dateien merken und wiederverwenden. Weil die frisch installierten Programme aber sofort nach deren Installation an ihrem neuen Ort genutzt werden sollen, schaltest Du die Funktion für dieses Kapitel aus.