以下内容源于网络资源的整理,如有侵权请告知删除。

我们利用Busybox制作根文件系统,就是为了创建下面的这些目录和各文件。其中有些目录和文件不是构建最小根文件系统所必需的,有些却是必需的。

1、/linuxrc文件

这是最重要的文件,是构建最小rootfs必不可少的文件。

2、/dev目录

在linux中一切皆是文件,因此一个硬件设备也被虚拟化成一个设备文件,设备文件是linux中特有的文件类型。该目录下存放的是设备文件,/dev/xxx就表示一个硬件设备。

在Linux系统下,以访问文件的方式来操作各种设备,即通过读写某个设备文件来操作某个具体硬件,即先open这个设备文件,然后read/write/ioctl这个设备,最后close这个设备。比如通过“dev/ttySAC0”文件可以操作串口0,通过“/dev/mtdblock1”可以访问MTD设备的第2个分区。

在最小rootfs中/dev目录是不可少的,因为这里面有一两个设备文件是rootfs必须的。

3、/sys和/proc目录

这两个目录在最小rootfs中也是不可省略的,但只要创建空文件夹即可,里面不需其他文件。这两个目录与驱动有关,属于linux中的虚拟文件系统。

/proc是一个空目录,常作为proc文件系统的挂载点,proc文件系统是个虚拟的文件系统,它没有实际的存储设备,里面的目录与文件都是由内核临时生成的,用来表示系统的运行状态,我们也可以操作其中的文件来控制系统。

4、/usr目录

该目录是用户所拥有的文件的存放目录。

/usr 目录中的文件可以存在另一个分区,系统启动以后再挂载到/usr目录下,它里面存放的是共享的、只读的程序和数据,这表明/usr目录下的内容可以在多个主机间共享。其他主机相关的可变的文件应该保存在其他目录,比如/var。

/usr目录在嵌入式中可以精减。

5、/etc目录

/etc目录中的所有文件全部都是运行时配置文件,会直接或者间接被/linuxrc调用,完成操作系统的运行时配置。

对于PC上的Linux系统,/etc目录下的文件和目录非常多,这些目录文件是可选的,它们依赖于系统中所拥有的应用程序,依赖于这些程序是否需要配置文件。在嵌入式系统中这些内容可以大为精减。

6、/lib目录

/lib目录也不能省略。该目录存放着当前操作系统中的动态和静态链接库文件。

我们主要是为了其中的动态链接库。

7、/bin目录

该目录存放着所有用户都可以使用的、基本的命令,比如cat,chgrp,chmod,cp,ls,sh,kill,mount,umount,mkdir,mknod,[,test等。

这些命令在挂接其它文件系统之前就可以使用,所以/bin目录必须和根文件系统在同一个分区中。

我们在利用Busybox制作根文件系统时,在生成的bin目录下的可执行的文件,也就是可用的一些命令。

8、/sbin 目录

该目录存放着系统命令,即只有管理员能够使用的命令,比如shutdown reboot fdisk fsck等命令。

系统命令还可以存放在/usr/sbin,/usr/local/sbin目录下,/sbin目录中存放的是基本的系统命令,它们用于启动系统,修复系统等。本地用户自己安装的系统命令放在/usr/local/sbin目录下。

与/bin目录相似,在挂接其他文件系统之前就可以使用/sbin,所以/sbin目录必须和根文件系统在同一个分区中。

9、/home目录

用户目录,它是可选的,对于每个普通用户,在/home目录下都有一个以用户名命名的子目录,里面存放用户相关的配置文件。

10、/root目录

根用户的目录,与此对应,普通用户的目录是/home下的某个子目录。

11、/var目录

与/usr目录相反,/var目录中存放可变的数据,比如spool目录(mail,news),log文件,临时文件。

12、/mnt目录

用于临时挂载某个文件系统的挂载点,一般用来临时挂载光盘,硬盘。

通常是空目录,也可以在里面创建空的子目录,比如/mnt/cdram /mnt/hda1 。

13、/tmp目录

用于存放临时文件,通常是空目录。

分析根文件系统中的目录结构相关推荐

  1. Android 项目在Eclipse中的目录结构

    Android工程目录    如果使用Eclipse插件ADT开发应用程序,必须要熟悉工程的目录结构,清楚各个目录下面放置的是什么东西.Android工程主要的目录有:src.bin.gen.res等 ...

  2. v66.07 鸿蒙内核源码分析(根文件系统) | 谁先挂到/谁就是根总 | 百篇博客分析OpenHarmony源码

    季康子问政于孔子.孔子对曰:"政者,正也.子帅以正,孰敢不正?" <论语>:颜渊篇 百篇博客系列篇.本篇为: v66.xx 鸿蒙内核源码分析(根文件系统) | 谁先挂到 ...

  3. iOS项目开发过程中的目录结构(转)

    iOS项目开发过程中的目录结构 我在这个目录结构方面真是吃了不少苦,开始总是觉得快点写快点写,后来发现只有快是不行的,在没有给整个项目的结构有一个清楚的认识和了解之前就匆匆动笔(敲代码啦)是非常冒失的 ...

  4. storm目录结构及在zk中的目录结构

    storm目录结构及在zk中的目录结构 @(STORM)[storm] storm目录结构及在zk中的目录结构 一storm在磁盘中的内容 一nimbus中的目录结构 1inbox目录 2stormd ...

  5. Linux 使用root用户登录系统,并查看当前的路径。 查看当前目录下面的所有文件(包括隐藏文件)。 在当前目录下,查看根目录中的目录结构。

    Linux一些命令 1.使用root用户登录系统,并查看当前的路径. 2.查看当前目录下面的所有文件(包括隐藏文件). 3.在当前目录下,查看根目录中的目录结构. List item 4.在当前/ro ...

  6. linux的根文件系统中的proc文件夹详解

    什么是proc文件系统    |linux /proc目录介绍|proc中文手册 proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提供接 ...

  7. 浅谈android中的目录结构

    在开发android应用的过程中,总要去调试APP,安装时又想去了解android的目录结构.然后搜到了一点材料. 原文地址:http://www.hiapk.com/viewthread.php?t ...

  8. 构建根文件系统的/dev目录

    在嵌入式ARM开发中,用busybox制作根文件系统时,其中必须构建的一个目录就是/dev目录.这个目录对所有的用户都十分重要,因为在这个目录中包含了所有Linux系统中使用到的外部设备,即所有的设备 ...

  9. word文档中显示目录结构、插入目录

    要使word中左侧显示目录结构,选择菜单栏"视图"--"文档结构图". 如果没有找到"文档结构图",可以自定义添加后重新上述操作. 要插入目 ...

最新文章

  1. 南京医科大学陈连民组招收博硕士研究生(肠道微生物与心血管代谢健康方向)...
  2. 远程桌面网关Apache Guacamole 发布1.0.0版本\n
  3. get 和post 方式请求数据
  4. 2019-1-17王志颖 c语言作业
  5. 周志华教授签名新书免费送!豆瓣满分森林书破解AI实践难题
  6. 谁在告谁?移动专利混战图
  7. 浅入浅出 Android 安全:第六章 Android 安全的其它话题
  8. lenovo X230热键功能
  9. 指针和引用的相同与不同
  10. 怎样访问服务器系统盘,访问云服务器上的系统盘
  11. jquery-animate()动画
  12. mysql8从入门到精通电子书_MySQL 8从入门到精通(视频教学版)
  13. pcie协议_如何通过PCIE协议实现FPGA 配置?详情请戳这里!
  14. k8s系列03-kubeadm部署calico网络的k8s集群
  15. 如何学习IOS APP开发?开发iOS手机软件一般用什么编程语言?
  16. touchID 和 FaceID~1
  17. 武汉大学 遥感院 数据结构实习
  18. PI Planning
  19. 实战Nagios NSCA方式监控Linux系统资源使用情况 -- Nagios配置篇 -- Nagios Server端
  20. 实用技巧 | Chrome浏览器如何对标签页进行分组整理?

热门文章

  1. 百度搜索资源平台上线,业内大佬送祝福!
  2. okl4 linux,数据接入 API
  3. HDU 1495 非常可乐(数论,BFS)
  4. Multisim、proteus和protel的区别
  5. mysql 时间段分组统计_group by 按某一时间段分组统计并查询(推荐)
  6. 探讨如何在Linux上通过windows的域控制上网( by quqi99 )
  7. made for china 柯达的赢利模式的转变
  8. 中国科学院大学计算机学科评估,中国科学院大学学科评估结果排名
  9. 基于神经网络算法LSTM模型对股票指数进行预测
  10. labview实现相对标准偏差计算