zl程序教程

您现在的位置是:首页 >  系统

当前栏目

linux系统根文件系统构建

Linux系统 构建 文件系统
2023-09-27 14:29:24 时间

根文件系统构建

一、根文件系统简介

  • 根文件系统是 Linux 内核启动以后挂载(mount)的第一个文件系统,
  • 从根文件系统中读取初始化脚本,比如 rcS,inittab 等。
  • 根文件系统和 Linux 内核是分开的,单独的 Linux 内核是没法正常工作的,必须要搭配根文件系统。如果不提供根文件系统,Linux 内核
    在启动的时候就会提示内核崩溃(Kernel panic)的提示

二、根文件系统组成

  • 嵌入式 Linux 根文件系统布局,按照FHS标准来安排
  • 嵌入式系统可能并不需要全部目录,对系统进行精简,以简化Linux的使用。
  • 通常不会放置内核源码因而存放源码的 /usr/src目录是不必要的, 甚至连头文件也不需要,即/usr/include目录也不必要;
  • 但是 /bin、/dev 、/etc、/lib 、/proc 、/sbin、/usr几个目录是不可或缺的。

典型嵌入式Linux根文件系统目录
在这里插入图片描述

三、BusyBox构建根文件系统

  1. 获取BusyBox码源
  2. 配置BusyBox(图形化配置)
    • 选择编译静态库
    • 选择交叉编译工具链
    • 选择安装目录
  3. 编译BusyBox到指定目录(只有bin、sbin、usr三个目录)
  4. 完善目录结构
    • 添加c运行库,复制动态连接文件(.so文件)到 /lib目录
    • 创建 /etc/init.d/rcS 文件 , 是一个shell脚本, rcS 就是规定启动哪些文件的脚本文件
    • 创建 /etc/fstab 文件,fstab在 Linux开机以后自动配置哪些需要自动挂载的分区
    • 创建/etc/inittab 文件,是init进程解析的配置文件,通过这个配置文件决定执行哪个进程
  5. 制作根文件系统镜像(或者网络nfs挂载)