根目录的意义与内容

根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。由于系统开机时需要特定的开机软件、核心文件、开机所需程序、函数库等等文件数据,若系统出现错误时,根目录也必须要包含有能够修复文件系统的程序才行。因为根目录是这么的重要,所以在FHS的要求方面,他希望根目录不要放在非常大的分区内,因为越大的分区你会放入越多的数据,如此一来根目录所在分区就可能会有较多发生错误的机会。
因此FHS标准建议:根目录(/)所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目录越小越好。如此不但性能较佳,根目录所在的文件系统也较不容易发生问题。
有鉴于上述的说明,因此FHS定义出根目录(/)下面应该要有下些次目录的存在才好, 即使没有实体目录,FHS也希望至少有链接文件存在才好。

FHS要求必须存在的目录

image.png
image.png
其它非标准目录
image.png

/usr目录

usr是Unix Software Resource的缩写,也就是“Unix操作系统软件资源”所放置的目录,而不是使用者的数据。FHS建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行创建该软件自己独立的目录。
因为是所有系统默认的软件都会放置到/usr下面,因此这个目录有点类似Windows系统的“C:\Windows\(当中的一部份)+C:\Programfiles\”这两个目录的综合体,系统刚安装完毕时,这个目录会占用最多的硬盘容量。一般来说,/usr的次目录建议有下面这些:
image.png

/var目录

如果/usr是安装时会占用较大硬盘容量的目录,那么/var就是在系统运行后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件,包括高速缓存(cache)、登录文件(log file)以及某些软件运行所产生的文件,包括程序文件(lock file, run file),或者例如MySQL数据库的文件等等。常见的次目录有:
image.png

centos7变化:

  • /bin —> /usr/bin
  • /sbin —> /usr/sbin
  • /lib —> /usr/lib
  • /lib64 —> /usr/lib64
  • /var/lock —> /run/lock
  • /var/run —> /run

image.png