6.2. Preparazione dei file system virtuali del kernel

Diversi file system esportati dal kernel sono usati per comunicare a e dal kernel stesso. Questi file system sono virtuali nel senso che per essi non viene utilizzato spazio su disco. Il contenuto del file system risiede in memoria.

Cominciare creando directory sulle quali verranno montati i file system:

mkdir -pv $LFS/{dev,proc,sys}

6.2.1. Creazione dei device nodes iniziali

Quando il kernel esegue il boot del sistema, richiede solo la presenza di alcuni device nodes, in particolare i device console e null. I device nodes saranno creati sul disco fisso in modo da essere disponibili prima che udevd sia stato avviato e anche quando Linux è avviato con init=/bin/bash. Creare i device eseguendo i seguenti comandi:

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

6.2.2. Montaggio e popolamento di /dev

Il metodo raccomandato per popolare la directory /dev con i devices consiste nel montare un file system virtuale (ad esempio tmpfs) nella directory /dev e permettere ai devices di essere creati dinamicamente su questo file system virtuale mano a mano che essi sono individuati o utilizzati. Generalmente questo viene fatto durante il processo di boot da Udev. Pioché questo nuovo sistema non ha ancora Udev e non è stato ancora avviato, è necessario montare e popolare /dev manualmente. Ciò si ottiene con un bind mount della directory /dev del sistema ospite. Un bind mount è un tipo speciale di montaggio, che permette di creare un'immagine di una directory o di un punto di mount in qualche altra locazione. Usare il seguente comando per ottenere questo:

mount --bind /dev $LFS/dev

6.2.3. Montaggio dei file system virtuali del kernel

Ora montare i rimanenti file system virtuali del kernel:

mount -vt devpts devpts $LFS/dev/pts
mount -vt tmpfs shm $LFS/dev/shm
mount -vt proc proc $LFS/proc
mount -vt sysfs sysfs $LFS/sys