根文件系统构建好以后就意味着我们已经拥有了一个完整的,可以运行的最小系统.
一. 根文件系统简介
根文件系统一般也叫做 rootfs,那么什么叫根文件系统?Linux 中的根文件系统更像是一个文件夹或者叫做目录,在这个目录里面会有很多的子目录,目录下的文件是Linux运行所必需的,比如库,常用的软件和命令等等.
根文件系统首先是内核启动所mount(挂载)的第一个文件系统,内核代码映像文件保存在根文件系统中,而系统引导启动程序会在根文件系统挂载之后从中把一些基本的初始化脚本和服务等加载到内存中去运行.
二. 根文件系统目录
三. 构建根文件系统
3.1 BusyBox 构建根文件系统
根文件系统里面就是一堆的可执行文件和其他文件组成的.
用busybox构建文件系统后还不能直接使用,还需要一些其他的文件
3.2 向根文件系统添加 lib库
向 rootfs 的“/lib”目录添加库文件
Linux 中的应用程序一般都是需要动态库的,当然你也可以编译成静态的,但是静态的可执行文件会很大.如果编译为动态的话就需要动态库,所以我们需要向根文件系统中添加动态库.
向 rootfs 的“usr/lib”目录添加库文件
3.3 创建其他文件夹
在根文件系统中创建其他文件夹,如 dev、proc、mnt、sys、tmp 和 root 等
3.4 创建/etc/init.d/rcS 文件
3.5 创建/etc/fstab 文件
3.6 创建/etc/inittab 文件
四. 系统烧写
我们需要将 uboot、linux kernel、.dtb(设备树)和 rootfs 这四个文件烧写到板子 上的 EMMC、NAND 或 QSPI Flash 等其他存储设备上
五. 同胞链接
一. UBOOT-CSDN博客
二. Linux内核-CSDN博客