在咱们初学嵌入式Linux时,首先学习的就是Linux的最小根文件系统;下面我将为初学者们详细的阐述一下Linux的最小根文件系统。html
根目录在Linux中即为“/”,要进入根目录,命令“cd /”便可进入根目录,并利用“ls -l”查看当前目录的详细信息,以下图所示是我当前使用的Ubuntu16.04的根目录一级列表(在此请各位忽略不重要的一些文件和目录,在以后再深刻学习)linux
将最小根文件系统整理以后的目录结构以下图所示(图片来源于网络)。服务器
Linux文件系统所起的名字也颇有意思,一目了然就知道该目录的做用(如下的目录英文全称是本人理解,并不是官方信息)。网络
1. /bin架构
包含基本命令,如ls、cp、mkdir、cat等,这个目录中的文件都是可执行的。——binary学习
2. /sbin操作系统
包含系统命令,如modprobe、hwclock、ifconfig等,大可能是涉及系统管理的命令,这个目录中的文件都是可执行的。——system binary日志
3. /devhtm
设备文件存储目录,应用程序经过对这些文件的读、写或是控制便可以对实际的设备进行访问或控制其动做。——devicesblog
4. /etc
系统配置文件目录,一些服务器的配置文件也在这里。如用户的帐号和密码、系统环境变量等,busybox的启动脚本也存放在这里。——etcetera
5. /lib
系统库文件目录,如我使用的EXYNOS4412烧写的文件系统中lib包含了librt-2.11.so、libgcc_s.so、libpthread-2.11.so等。——library
6. /mnt
该目录通常是用于存放挂载存储设备的挂载目录,若有chrom等目录,可参考/etc/fstab的定义。有须要时,也可让系统启动时自动挂载文件系统的挂载点放在该目录的操做都是容许的。——mount
7. /opt
opt是“可选”的意思,有些软件包会被安装在这里,例如我所移植的嵌入式Qt就存放在该目录。——option
8. /proc
操做系统运行时,进程及内核信息(如CPU、硬盘分区、内存信息等)存放在这里。/proc目录为伪文件系统proc的挂载目录,proc并非真正的文件系统,它存在于内存中。——process
9. /tmp
在用户运行程序时,可能会产生临时文件,/tmp就用来存放这些临时文件。——temporary
10. /usr
该目录是系统用于存放程序的目录,例如用户命令、用户库文件等。如我使用的riscv架构上的Linux文件系统中usr包含了bin、lib、sbin、share四个子目录。其中/usr/bin目录下包含了ipcs、env等命令,/usr/lib目录下包含了libncurses.so.5.九、libpci.so.3.5.1等,/usr/sbin目录下包含了dropbear、flashcp、i2cdetect等,/usr/share包含了一些其它文件。——user
11. /var
var表示的是变化的意思,该目录中的内容常常会变更,如/var/log下存放是的系统日志。——variety
12. /sys
Linux2.6内核所支持的sysfs文件系统被映射在此目录。sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径,其主要做用在于为管理linux设备提供一种统一模型的接口。Linux设备驱动模型中的总线、驱动和设备均可以在sysfs文件系统中找到对应的节点。当内核检测到在系统中出现了新设备后,内核会在sysfs文件系统中为该新设备生成一项新的记录。
原文出处:https://www.cnblogs.com/ImagineMiracle-wxn/p/Linux_FSDS-Imagine_Miracle.html