Peupler /dev

Créer les n½uds périphériques initiaux

Lorsque le noyau démarre le système, il requiert la présence de quelques n½uds périphériques, en particulier les périphériques console et null. Créez-les en lançant les commandes suivantes :

mknod -m 600 /dev/console c 5 1
mknod -m 666 /dev/null c 1 3

Monter tmpfs et peupler /dev

La méthode recommandée pour peupler le répertoire /dev de périphériques est de monter un système de fichiers virtuel (comme tmpfs) sur le répertoire /dev, et d'autoriser la création dynamique des périphériques sur le système de fichiers virtuels une fois qu'ils sont détectés ou que quelque chose tente d'y accéder. Ceci est fait généralement lors du démarrage. Comme ce nouveau système n'a pas encore été démarré, il est nécessaire de faire ce que le paquetage LFS-Bootscripts aurait fait en montant /dev :

mount -n -t tmpfs none /dev

Le paquetage Udev est celui qui va créé les périphériques dans le répertoire /dev. Comme il ne sera installé que plus tard lors de ce processus, créez manuellement l'ensemble minimum de n½uds de périphériques nécessaire pour terminer la construction de ce système :

mknod -m 622 /dev/console c 5 1
mknod -m 666 /dev/null c 1 3
mknod -m 666 /dev/zero c 1 5
mknod -m 666 /dev/ptmx c 5 2
mknod -m 666 /dev/tty c 5 0
mknod -m 444 /dev/random c 1 8
mknod -m 444 /dev/urandom c 1 9
chown root:tty /dev/{console,ptmx,tty}

Certains liens symboliques et répertoires sont requis par LFS qui les crée lors du démarrage du système grâce au paquetage LFS-Bootscripts. Comme il s'agit d'un environnement chroot et que nous n'avons pas démarré avec lui, ces liens symboliques et répertoires doivent être créés ici :

ln -s /proc/self/fd /dev/fd
ln -s /proc/self/fd/0 /dev/stdin
ln -s /proc/self/fd/1 /dev/stdout
ln -s /proc/self/fd/2 /dev/stderr
ln -s /proc/kcore /dev/core
mkdir /dev/pts
mkdir /dev/shm

Enfin, montez les bons systèmes de fichiers virtuels (noyau) sur les répertoires nouvellement créés:

mount -t devpts -o gid=4,mode=620 none /dev/pts
mount -t tmpfs none /dev/shm

Les commandes mount exécutées ci-dessus pourraient causer les messages d'avertissement suivants :

can't open /etc/fstab: No such file or directory.

Ce fichier—/etc/fstab—n'a pas été encore créé mais il n'est pas non plus requis pour le bon montage des systèmes de fichiers. De cette façon, le message peut être ignoré sans crainte.