#Linux系统基础
Linux目录标准FHS
FHS,全称为 Filesystem Hierarchy Standard(文件系统层次结构标准),是Linux和其他类Unix操作系统的目录结构和目录内容的标准。FHS定义了文件和目录在操作系统中的布局,以确保不同发行版之间的兼容性和一致性。
一、四种交互作用形态
FHS 依据文件系统使用的频繁与否与是否允许使用者随意更动, 而将目录定义成为四种交互作用的形态
四种交互作用的说明
-
可分享的:
- 可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据, 是能够分享给网络上其他主机挂载用的目录;
-
不可分享的:
- 自己机器上面运作的装置文件或者是与程序有关的 socket 文件等, 由于仅与自身机器有关,所以就不适合分享给其他主机了。
-
不变的:
- 有些数据是不会经常变动的,例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;
-
可变动的:
- 经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等。
二、三类目录的意义与内容
事实上,FHS 针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录
的定义:
- / (root, 根目录):与开机系统有关;
- /usr (unix software resource):与软件安装/执行有关;
- /var (variable):与系统运作过程有关
1.根目录/
- 根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。
因此 FHS 标准建议:根目录(/)所在分区应该越小越好, 且应用程序所安装的软件最好不要与根目录放在同一个分区槽内,保持根目录越小越好。 如此不但效能较佳,根目录所在的文件系统也较不容易发生问题。
1.FHS要求必须有的次目录
目录 | 内容 |
---|---|
⭐️/bin | 系统有很多放置执行文件的目录,但/bin 比较特殊。因为/bin 放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般账号所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash 等等常用的指令。 |
/boot | 这个目录主要在放置开机会使用到的文件,包括 Linux 核心文件以及开机选单与开机所需配置文件等等。 Linux kernel 常用的档名为:vmlinuz,如果使用的是 grub2 这个开机管理程序, 则还会存在/boot/grub2/这个目录 |
⭐️/dev | 在 Linux 系统上,任何装置与接口设备都是以文件的型态存在于这个目录当中的。 只要透过存取这个目录底下的某个文件,就等于存取某个装置, 重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/loop*, /dev/sd* 等等 |
⭐️/etc | 系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件、 各种服务的启始档等等。一 |