linux目录配置

在了解了每个档案的相关种类与属性,以及了解如何更改文件属性/权限的相关信息后,在要来要了解的是,为什么每一套linux distribution他们的配置文件。

Linux目录配置的依据FHS

因为利用linux来开放产品或者distributions的社群/公司与个人实在是太多了,如果每个人都利用自己的想法来配置档案存放的目录,那么就会造成很多管理上的困扰。你能想象,你进入到一个企业之后,所接触到的linux目录配置方法和你以前学的完全不同马?所以,后来就有所谓的Filesystem Hierarchy Standard(FHS)标准的出炉了。

事实上,FHS是根据过去的经验一直在持续改版的,FHS依据文件系统使用的频繁与否与是否允许使用者随意改动,将目录定义成为四种交互作用的状态,用表格说,有点像底下这样。

这里写图片描述

上表中的目录是一些代表性的目录,该目录底下所放置的数据会在底下谈到,我们需要了解的是什么是四种类型。

可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用户邮件数据,是能够分享给网络上其他主机挂载的目录;
不可分享的:自己机器上面运作的装置档案是与程序有关的sockets档案等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了。
不变的:有些数据是不经常变动的,跟随着distribution而不变动。例如函式库,文件说明文件,系统管理员所管理的主机服务配置等文件等。
可变动的:经常变动的数据,例如登陆文件,一般用户可自行接受的新闻组等。

事实上,FHS针对目录树架构定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:

  1. /(root,根目录):与开机系统有关;
  2. /user(unix software resource) : 与软件安装与执行有关;
  3. /var(variable) : 与系统运作过程有关;

为什么要定义这三层目录呢?其实是有意义的。每层目录底下所应该要放置的目录有都有特定的规定。

根目录的意义与内容:

根目录是整个系统中最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。由于系统开机时需要特定的开机软件/核心档案/开机所需程序。函式库等,若系统出现错误,根目录也必须要包含能够修复文件系统的程序才行。因为根目录是这么的重要,所以在FHS的要求方面,他希望根目录不要放在非常大的分割槽内,因为越大的分隔槽你会放入越多的数据,如此一来根目录所在的分隔槽就会可能会有较多发生错误的机会。

因此 FHS 标准建议:根目录(/)所在分割槽应该越小越好, 且应用程序所安装的软件最好不要与根目录放在同一个分割槽内,保持根目录越小越好。 如此不但效能较佳,根目录所在的文件系统也较不容易发生问题。

有鉴于上述的说明,因此 FHS 定义出根目录(/)底下应该要有底下这些次目录的存在才好:

这里写图片描述
这里写图片描述
这里写图片描述

除了这些目录的内容之外,另外需要注意的是,因为根目录与开机有关,开机过程中仅有根目录被挂载,其他分隔槽则是在开机之后才会持续的进行挂载的行为。就是因为如此,因此根目录下与开机过程有关的记录,就不能与根目录放到不同的分隔槽中去,有以下这些:

  1. /etc : 配置文件
  2. /bin : 重要执行文件
  3. /dev:所需要的装置档案
  4. /sbin : 重要系统
  5. /lib : 重要的系统执行文件
    这五个目录千万不能与根目录放在不同的分隔槽。

/user 的意义与内容
依据 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 数据库的档案等等。常见的次目录有:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值