牛骨文教育服务平台(让学习变的简单)

6.2. 挂载虚拟内核文件系统

虚拟内核文件系统(Virtual Kernel File Systems),是指那些是由内核产生但并不存在于硬盘上(存 在于内存中)的文件系统,他们被用来与内核进行通信。

首先让我们为虚拟内核文件系统建立挂载目录:

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

6.2.1. 创建初始设备节点

内核在引导时要求某些设备节点必须存在(特别是 console 和 null ),这些设备节点必须创建在硬盘 上才能使得内核在 udev 尚未启动之前就可以使用它们,此外还有当Linux以init=/bin/bash 启动。使用下面的命令来创建这些节点:

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

6.2.2.挂载并填充 /dev 目录

推荐的向 /dev 目录填充设备的方法是在 /dev 上挂载一个虚拟文件系统(比如 tmpfs),然后在设备 被检测到或被访问到的时候(通常是在系统引导的过程中)动态创建设备节点。既然现在新的系统尚未被引导, 那么就有必要通过手工挂载和填充 /dev 目录。这可以通过绑定挂载宿主系统的 /dev 目录。绑定挂载是一种 特殊的挂载方式,允许你创建一个目录或者是挂载点的镜像到其他的地方。可以使用下面的命令:

mount --bind /dev $LFS/dev

6.2.3. 挂载虚拟内核文件系统

现在挂载虚拟内核文件系统:

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