Afin que l'utilisateur root
puisse se
connecter et pour que le nom « root » soit reconnu, il doit y avoir des
entrées adéquates dans les fichiers /etc/passwd
et /etc/group
.
Créez /etc/passwd
en exécutant les
commandes suivantes:
cat > /etc/passwd << "EOF"root:x:0:0:root:/root:/bin/bash
bin:x:1:1:/bin:/bin/false
daemon:x:2:6:/sbin:/bin/false
messagebus:x:27:27:D-Bus Message Daemon User:/dev/null:/bin/false
systemd-bus-proxy:x:71:72:systemd Bus Proxy:/:/bin/false
systemd-journal-gateway:x:73:73:systemd Journal Gateway:/:/bin/false
systemd-journal-remote:x:74:74:systemd Journal Remote:/:/bin/false
systemd-journal-upload:x:75:75:systemd Journal Upload:/:/bin/false
systemd-network:x:76:76:systemd Network Management:/:/bin/false
systemd-resolve:x:77:77:systemd Resolver:/:/bin/false
systemd-timesync:x:78:78:systemd Time Synchronization:/:/bin/false
systemd-coredump:x:79:79:systemd Core Dumper:/:/bin/false
nobody:x:65534:65533:Unprivileged User:/dev/null:/bin/false
EOF
Le vrai mot de passe pour root
(le
« x »
utilisé ici n'est qu'un bypass) sera configuré plus tard.
Utilisateurs supplémentaires que vous pourriez vouloir ajouter :
adm:x:3:16:adm:/var/adm:/bin/false
Était utilisé pour les programmes qui effectuaient des tâches administratives.
lp:x:10:9:lp:/var/spool/lp:/bin/false
Utilisé par des programmes pour l'impression
mail:x:30:30:mail:/var/mail:/bin/false
Souvent utilisé par des programmes de messagerie
news:x:31:31:news:/var/spool/news:/bin/false
Souvent utilisé pour un réseau de serveurs de nouvelles (news)
operator:x:50:0:operator:/root:/bin/bash
Souvent utilisé pour permettre aux opérateurs du système d'accéder au système
postmaster:x:51:30:postmaster:/var/spool/mail:/bin/false
Utilisé généralement comme compte qui reçoit toutes les informations de problèmes avec le serveur de messagerie
Créez /etc/group
en exécutant les
commandes suivantes:
cat > /etc/group << "EOF"
root:x:0:
bin:x:1:
sys:x:2:
kmem:x:3:
tty:x:5:
tape:x:4:
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:
adm:x:16:
mail:x:30:
messagebus:x:27:
nogroup:x:65533:
systemd-bus-proxy:x:72:
systemd-journal:x:28:
systemd-journal-gateway:x:73:
systemd-journal-remote:x:74:
systemd-journal-upload:x:75:
systemd-network:x:76:
systemd-resolve:x:77:
systemd-timesync:x:78:
systemd-coredump:x:79:
wheel:x:39:
EOF
Groupes supplémentaires que vous pourriez vouloir ajouter :
console:x:17:
Ce groupe a un accès direct à la console
cdrw:x:18:
Ce groupe est autorisé à utiliser le lecteur CDRW
news:x:31:news
Utilisé par le réseau de serveurs de nouvelles
users:x:1000:
Le GID utilisé par défaut par shadow pour les nouveaux utilisateurs
nobody:x:65533:
C'est utilisé par NFS
Les groupes créés ne font partie d'aucun standard — ce sont des groupes décidés d'une part par les exigences de la configuration de Ssytemd dans le système final, d'autre part par la convention couramment utilisée par un grand nombre de distributions Linux existantes. La Linux Standard Base (LSB, disponible sur http://www.linuxfoundation.org/collaborate/workgroups/lsb) recommande uniquement que, après le groupe « root » ayant l'identifieur de groupe (GID) 0, un groupe « bin » avec un GID de 1 soit présent. L'administrateur système peut choisir librement tout autre noms de groupe et GIDs, vu que les programmes bien écrits ne dépendent pas des numéros GID mais utilisent plutôt le nom d'un groupe.
Pour enlever le prompt « I have no name! », lancez un nouveau
shell. Puisque Glibc a été complètement installé dans
Constructing Cross-Compile Tools et que /etc/passwd
and /etc/group
ont étés créés, la résolution des noms
d'utilisateur et de groupe va maintenant fonctionner.
exec /tools/bin/bash --login +h
Remarquez l'utilisation du paramètre +h
. Il dit à bash de ne pas utiliser son hachage
de chemin interne. Sans ce paramètre, bash se rappelerait des chemins
vers les binaires qu'il a exécuté. Pour s'assurer que les binaires
nouvellement compilés seront utilisés dès qu'ils seront installés, le
paramètre +h
sera utilisée
durant tout le chapitre.