Linux文件系统层次结构与备份管理全解析
1. 标准的演变:FSSTND与FHS
早期Linux发行版因受Unix分裂和变体的影响,缺乏统一模式,导致诸多混乱。为解决这一问题,1994年初发布了文件系统标准(FSSTND),它对以下方面进行了标准化:
- 规范了 /bin
和 /usr/bin
中的程序,避免脚本引用文件时出现问题。
- 规定可执行文件不应存于 /etc
,这在以往较为常见。
- 从 /usr
目录树中移除可变文件,使其可挂载为只读,增强安全性。
FSSTND有1.0、1.1和1.2三个主要版本。然而,到1995年,其局限性逐渐显现,于是开发了文件系统层次结构标准(FHS)。FHS基于FSSTND并进行了大幅扩展,它不仅适用于Linux,还可用于定义其他类Unix操作系统的文件布局。
FHS有两个重要区分:
- 可共享文件与不可共享文件 :可共享文件如用户数据文件和程序二进制文件,可通过NFS服务器在计算机间共享;不可共享文件包含系统特定信息,如配置文件,通常不适合共享。
- 静态文件与可变文件 :静态文件通常不会改变,除非系统管理员直接干预,大多数程序可执行文件属于此类;可变文件可由用户、自动化脚本、服务器等更改,如用户主目录和邮件队列。FHS试图将每个目录归入这个2×2(可共享/不可共享×静态/可变)矩阵的一个单元格。例如, /home
是可共享且可变的, /usr