2.6Linux下目录配置约定–FHS(文件系统层次标准)
下一篇: 2.7Linux根目录(/)的意义与内容
FHS(Filesystem Hierarchy Standard):文件系统层次标准。它约定了Linux目录配置方法。因为linux发行版实在太多,常见的有centos,redhat,ubuntu等。如果每个发行版都仅有自己特定的目录配置,那么使用者每使用一套系统,就要重新去学习一遍目录结构,这加大了使用者的使用难度,所以才有了FHS。FHS的官方文件指出,他们的主要目的是希望让使用者可以了解到已安装软件通常放置于哪个目录下, 所以他们希望独立的软件开发商、操作系统制作者、以及想要维护系统的用户,都能够遵循FHS的标准。
也就是说,FHS的重点在于规范每个特定的目录下应该要放置什么样子的数据而已。这样做好处非常多,因为Linux操作系统就能够在既有的面貌下(目录架构不变)发展出开发者想要的独特风格。
FHS依据文件系统使用的频繁与否与是否允许使用者随意更动, 而将目录定义成为四种交互作用的形态:
可分享的(shareable) 不可分享的(unshareable)
不变的(static) /usr (软件放置处) /etc (配置文件)
/opt (第三方协力软件) /boot (开机与核心档)
可变动的(variable) /var/mail (使用者邮件信箱) /var/run (程序相关)
/var/spool/news (新闻组) /var/lock (程序相关)
可分享的:可以分享给其它系统挂载使用的目录,所以包括执行文件与用户的邮件等数据,是能够分享给网络上其他主机挂载用的目录;
不可分享的:自己机器上面运作的配置文件或者是与程序有关的socket文件等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了。
不变的:有些数据是不会经常变动的,跟随着distribution而不变动。 例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;
可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等。
事实上,FHS针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:
/ (root, 根目录):与开机系统有关;
/usr (unix software resource):与软件安装/执行有关;
/var (variable):与系统运作过程有关。
原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission_3.php
下一篇: 2.7Linux根目录(/)的意义与内容