Linux文件系统层次结构如图所示:
/proc (processes)
- 目录存放了进程和系统的信息,可以在这个目录下获取系统的信息,这些信息是在内存中,由系统自己产生的。
- proc是一个伪文件系统,它只存在内存当中,而不占用外存空间。也就是说,这个目录的内容不在硬盘上而是在内存里。
- 用户和应用程序可以通过proc来获取系统的信息,并可以改变内核的某些参数,由于系统的一些信息,如进程,是动态变化的,所以用户和应用程序读取proc文件时,proc文件是从系统内核中动态获取信息并提交的。
- /proc 中有一些有趣的文件有:cpuinfo,它标识了处理器的类型和速度;pci,显示在 PCI 总线上找到的设备;modules,标识了当前加载到内核中的模块。
/sys (system)
- 目录是可写的,可以通过它来访问和修改内核的参数
- 它在proc的目录下,是一个设备管理的文件,它整理了设备驱动相关文件
- 正在运行的硬件设备的驱动程序信息。(虚拟文件系统,不占内存)
/SElinux (System-Enhanced Linux)
- 带给Linux的价值:提供了一种灵活的、可配置的MAC机制
- 由Kernel SElinux模块和用户态工具组成
- 是Linux的一个内核模块,同时也是一个安全的子系统
- 提供了一种灵活的强制访问控制系统,且内嵌与Linux Kernel中
- 简单粗暴的理解,就相当于Windows下的防火墙,在保护你的系统
/bin (Binaries)
- 包含了系统管理员和用户都可能使用到的命令。例如:ls、mkdir、pwd
- bin下面不能有子文件夹
usr/lib
- usr千万不要理解为用户的意思,全称是Unix System Resourse。里面一般放软件程序
- usr/lib含有更多用于用户程序的库文件
- /lib是内核级的,/usr/lib是系统级的
usr/local
- 系统管理员在本地自己安装的软件
- 用户自己编译的软件会默认安装在这个文件下
- usr/local是用户级的
/var (Variable)
- 用于存储不断改变的数据或文件。例如日志文件就在/var/log目录中
/boot
- 开始启动过程所需要的所有文件
- 存储了内核在开始执行用户模式程序之前的所有数据
/etc
- 全称 Editable Text Configuration 或者 Extended Tool Chest
- 特定于此系统的配置文件
- 必须是静态文件而且是不可执行的二进制文件
/dev (Devices)
- 包含特殊的设备文件,供系统用于访问硬件
/run
- 自上一次系统启动以来,启动的进程运行时的数据
- 此目录中的内容在重启时重新创建
/home
- 普通用户存储其个人数据和配置文件的主目录
/tmp (Temporary)
- 供临时文件使用的可写全局空间
- 10天内未访问、未更该或未修改的文件将自动从这个目录中删除
- 还有一个临时目录/var/tmp,30天内未访问、未更该或未修改的文件将自动从这个目录中删除