根目录 (/) 的意义与内容:
根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的, 同时根目录也与 开机/还原/系统修复等动作有关。 由于系统开机时需要特定的开机软件、核心档案、开机所需程序、函式库等等档案数据,若系统出现错误时,根目也必项要包吨有能够修复文件系统的程序才行。 因为根目录是这么的重要,所以在 FHS 的要求方面,他希望根目录不要放在非常大的分割槽内, 因为越大的分割槽妳会放入越多的数据,如此一来根目录所在分割槽就可能会有较多发生错误的机会。
因此 FHS 标准建议:根目录 (/) 所在分割槽应该越小越好, 与应用程序所安装的软件最好不要与根目录放在同一个分割槽内,保持根目录越小越好。 如此不但效能较佳,根目录所在的文件系统也较不容易发生问题。
有鉴二上述的说明,因此 FHS 定义出根目录(/)底下应该要有底下这些次目录的存在才好:
亊实上 FHS 针对根目录所定义的标准就仅有上面的咚咚,不过我们的 Linux 底下还有讲多目录你也需要了解一下的。 底下是几个在 Linux 当中也是非常重要的目录:
除了这些目录的内容以外,另外要注意的是,因为根目录与开机有关,开机过程中仅有根目录会被挂载, 其他分割槽则是在开机完成以后才会持续的进行挂载的行为。就是因为如此,因此根目录下不开机过程有关的目录, 就不能够与根目录放到不同的分割槽去!那哪些目彔不可与根目录分开呢?有底下这些:
# /etc:配置文件
# /bin:重要执行档
# /dev:所需要的装置档案
# /lib:执行档所需的函式库不核心所需的模块
# /sbin:重要的系统执行文件
这五个目彔千万不可与根目彔分开在不同的分割槽!请背下来啊! 好了,谈完了根目录,接下来我们就来谈谈/usr 以及/var 啰!先看/usr 里面有些什么东西:
/usr 的意义与内容:
依据 FHS 的基本定义,/usr 里面放置的数据属于可分享的与不可变动的(shareable, static), 如果你知道如何透过网络进行分割槽的挂载(例如在朋务器篇会谈到的 NFS 朋务器),那么/usr 确实可以分享给局域网络内的其他主机来使用喔!
很多读者都会误会/usr 为 user 的缩写,其实 usr 是 Unix Software Resource 的缩写, 也就是『Unix操作系统软件资源』所放置的目彔,而不是用户的数据啦!这点要注意。 FHS 建议所有软件开发者,应该将他们的数据合理的分别放置到这个目彔下的次目彔,而不要自行建立该软件自己独立的目彔。因为是所有系统默认的软件(distribution 发布者提供的软件)都会放置到/usr 底下,因此这个目彔有点类似 Windows 系统的『C:\Windows\ + C:\Program files\』这两个目彔的综合体,系统刚安装完毕时,这个目彔会占用最多的硬盘容量。 一般来说,/usr 的次目彔建议有底下这些:
/var 的意义与内容:
如果/usr 是安装时会占用较大硬盘容量的目彔,那么/var 就是在系统运作后才会渐渐占用硬盘容量的目彔。 因为/var 目彔主要针对常态性变动的档案,包括快取(cache)、登彔档(log file)以及某些软件运作所产生的档案, 包括程序档案(lock file, run file),或者例如 MySQL 数据库的档案等等。常见的次目彔有: