FHS针对目录树架构仅定义出三层目录下应该放置哪些数据,分别是下面三个目录:
-
/(根目录):与开机系统有关;
-
/usr(unix software resource):与软件安装执行有关;
-
/var(variable):与系统运作过程有关。
下面分别对上述三层目录进行详细的阐述。
(1) /(根目录)
根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。由于系统开机时需要特定的开机软件、核心档案、开机所需程序、函式库等等档案数据,若系统出现错误时,根目录也必须要包含有能够修复文件系统的程序才行。因为根目录是如此重要,所以在FHS的要求方面,希望根目录不要放在非常大的分割槽中,因为越大的分割槽会放入越多的数据,如此一来根目录所在分割槽就可能会有较多发生错误的机会。
因此通常情况下,根目录所在分割槽应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分割槽中,保持根目录越小越好。如此不但性能较佳,同时根目录所在的文件系统也较不容易放生错误。下表为FHS所定义的根目录下应该要有的次目录的介绍:
除此之外,Linux下还有几个其他的目录也需要了解一下,如下表:
在Linux中,因为根目录与开机有关,开机过程中仅有根目录会被挂载,其他分割槽则是在开机完成之后才会持续的进行挂载行为。因此,根目录下与开机过程有关的目录就不能够与根目录放到不同的分割槽中。下面这五个目录则是与开机密不可分而不能与根目录分开的目录。
-
/etc:配置文件
-
/bin:重要执行档。与一般用户及单人模式下操作有关的指令。
-
/dev:装置和接口配置相关的档案
-
/lib:执行档所需要的函式库与核心所需的模块
-
/sbin:与系统管理员操作有关的指令
(2) /usr
根据FHS的定义,/usr里面放置的数据属于可分享的但不可变动的数据。类似于Windows系统的C:\Windows与C:\Program Files这两个目录的综合体。建议所有软件开发者将他们饿数据合理的分别放置在这个目录下的次目录中,而不是自行建立该软件自己独立的目录。
(3) /var
/var目录主要针对常态性变动的档案,包括快取(cache)、登陆档(log file)、以及某些软件运作所产生的档案,包括程序档案(lock file, run file),或者例如MySQL数据库的档案等等。常见的次目录有:
综上即为FHS标准,接下来,我们将整个目录树以图标的方法来显示,并且将较为重要的档案数据列出来。
原创文章,作者:21期王逸凡,如若转载,请注明出处:http://www.178linux.com/52214