Linux操作系统目录配置标准FHS详细介绍
因为Linux的开发人员实在太多了,如果每个人都使用自己的目录配置方法,那么将可能会带来很多管理问题。你能想象,你进入一个企业之后,所接触到的 Linux目录配置方法竟然跟你以前学的完全不同吗?很难想象。所以,后来就有所谓的文件系统层次标准(Filesystem Hierarchy Standard,FHS)出台。
FHS实际上仅是规范在根目录(/)下面各个主要目录应该放什么样的文件。FHS定义了两层规范,第一层是, / 下面的各个目录应该要放什么文件数据,例如 /etc应该要放置设置文件,/bin与 /sbin则应该要放置可执行文件等等。第二层则是针对 /usr及 /var这两个目录的子目录来定义。例如 /var/log放置系统登录文件、/usr/share放置共享数据等等。
由于FHS仅是定义出最上层(/)及子层(/usr, /var)的目录内容应该要放置的文件数据,因此,在其他子目录层级内,就可以随开发人员自行配置了。举例来说,FC4的网络设置数据放在 /etc/sysconfig/network-script/ 目录下,但SuSE Server 9则是将网络放在 /etc/sysconfig/network/ 目录下,目录名称是不同的。
另外,在Linux中,所有的文件与目录都由根目录 / 开始。那是所有目录与文件的源头。然后再一个一个分支下来,有点像树状。因此,我们也称这种目录配置方式为:“目录树(directory tree)”。这个目录树主要特性有:
目录树的起始点为根目录(/, root)。
每一个目录不仅能使用本地端分区的文件系统,也可以使用网络上的文件系统。举例来说,可以利用网络文件系统(Network File System,NFS)服务器载入某特定目录等。
每一个文件在此目录树中的文件名(包含完整路径)都是独一无二的。
此外,根据文件名写法的不同,也可将路径(path)定义为绝对路径(absolute)与相对路径(relative)。绝对路径为:由根目录(/)开始写起的文件名或目录名称,例如 /home/dmtsai/.bashrc;相对路径为相对于当前路径的文件名写法。例如 ./home/dmtsai或 ../../home/dmtsai/ 等等。反正开头不是 / 就属于相对路径的写法。必须要了解,相对路径是以“当前所在路径的相对位置”来表示的。举例来说,当前在 /home目录下,如果想要进入 /var/log目录时,怎么写呢?