Linux目录标签概览

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

 

 

 

 

 

 

 

 事实上FHS针对根目录所定义的标准就仅有上面的咚咚,不过我们的Linux底下还有许多目录你也需要了解一下的。底下是几个在Linux当中也是非常重要的目录喔:

 早期Linux 在设计的时候,若发生问题时,救援模式通常仅挂载根目录而已,因此有五个重要的目录被要求一定要与根目录放置在一起,那就是/etc, /bin, /dev, /lib, /sbin 这五个重要目录。现在许多的Linux distributions 由于已经将许多非必要的文件移出/usr 之外了,所以/usr 也是越来越精简,同时因为/usr 被建议为『即使挂载成为只读,系统还是可以正常运作』的模样,所以救援模式也能同时挂载/usr 喔!例如我们的这个CentOS 7.x 版本在救援模式的情况下就是这样。因此那个五大目录的限制已经被打破了呦!例如CentOS 7.x 就已经将/sbin, /bin, /lib 通通移动到/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数据库的文件等等。常见的次目录有:

 

目录树架构示意图:

 

posted @ 2022-03-17 16:07  少年Dev  阅读(73)  评论(0编辑  收藏  举报