Linux FHS结构
linux的文件系统分层结构FileSystem Hierarchy Standdard(简称FHS)
1、文件系统的目录结构:
- 文件和目录被一个组织成一个单根倒置树结构
- 文件系统从根目录下开始,用“/”表示
- 根文件系统(rootfs):root filesystem
- 标准Linux文件系统(如:ext4),文件名称大小写敏感
- 以 . 开头的文件为隐藏文件
- 路径用 / 分隔
- 文件名最长255个字节
- 包括路径在内文件名称最长4095个字节
- 蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
-
除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引
号来引用 - 每个文件都有两类相关数据:元数据:metadata,即属性, 数据:data,即文件内容
2、默认的基本目录结构如下:
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
/bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)/lib64:专用于x86_64系统上的辅助共享库文件存放位置/etc:配置文件目录/home/USERNAME:普通用户家目录/root:管理员的家目录/media:便携式移动设备挂载点/mnt:临时文件系统挂载点/dev:设备文件及特殊文件存储位置b: block device,随机访问c: character device,线性访问/opt:第三方应用程序的安装位置/srv:系统上运行的服务用到的数据/tmp:临时文件存储位置/usr: universal shared, read-only databin: 保证系统拥有完整功能而提供的应用程序sbin:lib:32位使用lib64:只存在64位系统include: C程序的头文件(header files)share:结构化独立的数据,例如doc, man等local:第三方应用程序的安装位置bin, sbin, lib, lib64, etc, share/var: variable data filescache: 应用程序缓存数据目录lib: 应用程序状态信息数据local:专用于为/usr/local下的应用程序存储可变数据lock: 锁文件log: 日志目录及文件opt: 专用于为/opt下的应用程序存储可变数据run: 运行中的进程相关数据,通常用于存储进程pid文件spool: 应用程序数据池tmp: 保存系统两次重启之间产生的临时数据/proc: 用于输出内核与进程信息相关的虚拟文件系统/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
3、文件系统结构总结:
- Linux的目录中只有一个根目录
/
- Linux的各个目录存放的内容是规划好的,不要乱放文件。
- Linux是以文件的形式管理设备的,因此Linux系统中一切皆为文件。
- Linux的各个文件目录下存放什么内容,需要有一个准确的认识。
4、文件类型
使用命令查看文件,首字母会标记该文件的文件类型,有以下几种类型:
–
: 普通文件d
: 目录文件b
:块文件c
:字符文件l
:符号链接文件p
:管道文件pipes
:套字节文件socket