Filesystem Hierarchy Standard (文件系统层次标准,FHS)标准依据文件系统使用的频繁与否与是否允讲使用者随意更动, 而将目录定义成四种交互做用的形态,具体以下:数据库
事实上,FHS针对目录树架构仅定义出三层目录下应该放置哪些数据,分别是下面三个目录:网络
下面分别对上述三层目录进行详细的阐述。架构
(1) /(根目录)socket
根目录是整个系统最重要的一个目录,由于不但全部的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动做有关。因为系统开机时须要特定的开机软件、核心档案、开机所需程序、函式库等等档案数据,若系统出现错误时,根目录也必需要包含有可以修复文件系统的程序才行。由于根目录是如此重要,因此在FHS的要求方面,但愿根目录不要放在很是大的分割槽中,由于越大的分割槽会放入越多的数据,如此一来根目录所在分割槽就可能会有较多发生错误的机会。ide
所以一般状况下,根目录所在分割槽应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分割槽中,保持根目录越小越好。如此不但性能较佳,同时根目录所在的文件系统也较不容易放生错误。下表为FHS所定义的根目录下应该要有的次目录的介绍:性能
除此以外,Linux下还有几个其余的目录也须要了解一下,以下表:3d
在Linux中,由于根目录与开机有关,开机过程当中仅有根目录会被挂载,其余分割槽则是在开机完成以后才会持续的进行挂载行为。所以,根目录下与开机过程有关的目录就不可以与根目录放到不一样的分割槽中。下面这五个目录则是与开机密不可分而不能与根目录分开的目录。unix
(2) /usrblog
根据FHS的定义,/usr里面放置的数据属于可分享的但不可变更的数据。相似于Windows系统的C:\Windows与C:\Program Files这两个目录的综合体。建议全部软件开发者将他们饿数据合理的分别放置在这个目录下的次目录中,而不是自行创建该软件本身独立的目录。接口
(3) /var
/var目录主要针对常态性变更的档案,包括快取(cache)、登录档(log file)、以及某些软件运做所产生的档案,包括程序档案(lock file, run file),或者例如MySQL数据库的档案等等。常见的次目录有:
综上即为FHS标准,接下来,咱们将整个目录树以图标的方法来显示,而且将较为重要的档案数据列出来。