文件分析——根文件系统的目录结构

本文详细介绍了使用Busybox构建根文件系统时不可或缺的组件,包括/lLinuxrc启动脚本、/dev设备目录、/sys和/proc虚拟文件系统、/usr用户共享文件、/etc运行时配置、/lib链接库、/bin基础命令、/sbin系统命令、/home用户目录、/root根用户目录、/var可变数据存储、/mnt临时挂载点和/tmp临时文件目录。这些组件构成了嵌入式系统的基础运行环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

我们利用busybox制作根文件系统,就是为了创建下面的这些目录和文件。

下面中的有些目录和文件不是构建最小根文件系统所必需的,有些却是必需的。

 

01、/linuxrc文件

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

02、/dev目录

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

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

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

03、/sys和/proc目录

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

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

04、/usr目录

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

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

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

05、/etc目录

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

对于PC上的Linux系统,/etc目录下的文件和目录非常多,这些目录文件是可选的,它们依赖于系统中所拥有的应用程序,依赖于这些程序是否需要配置文件。

在嵌入式系统中这些内容可以大为精减。

06、/lib目录

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

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

07、/bin目录

该目录存放着所有用户都可以使用的、基本的命令。

比如cat,chgrp,chmod,cp,ls,sh,kill,mount,umount,mkdir,mknod,[,test等命令。

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

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

08、/sbin 目录

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

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

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

09、/home目录

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

10、/root目录

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

11、/var目录

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

12、/mnt目录

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

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

13、/tmp目录

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天糊土

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值