共计 916 个字符,预计需要花费 3 分钟才能阅读完成。
导读 | 提到 GNU/Linux 系统的目录结构,不得不说一下 FHS(Filesystem Hierarchy Standard,文件系统层次结构标准),正是这一标准的存在,详细的定义了类 Unix 操作系统中各种应用软件,管理工具,开发工具,脚本以及帮助文档的位置,让遵循该标准的各种 GNU/Linux 发行版目录结构几乎都是一致的。 |
在 FHS 中,根据文件的共享性和文件是否要求被修改的特点,其将文件划分为可共享文件 / 不可共享文件以及可变数据文件 / 静态数据文件两大类。FHS 将不同属性的文件划归到不同的目录,以便系统管理。
如下表所示:
需要注意,并不是所有在文件系统中的文件都是可共享的,每个拥有本地存储设备的系统都会有自己不可共享的文件。通过目录文件性质的划分,可以很方便的将其他主机上的共享文件目录挂载到本地系统。
因为 FHS 目录规定,你会发现 GNU/Linux 不同的发行版都存在以下目录结构:
更多关于 FHS 目录的规定,可以参看 ”https://www.pathname.com/fhs/pub/fhs-2.3.pdf”
GNU/Linux 的系统结构包括以下几部分,如下图所示:
应用程序:例如文本编辑器,Web 浏览器,X Winodow,网络应用程序,系统工具等一系列的应用。这些应用通过系统调用接口与 Linux 内核发生交互。
Shell& 函数库:Shell 是 GNU/Linux 系统的命令解释器,用于处理输入,实现和系统的交互。库函数则为编程提供接口,实现对系统调用的再次封装,为上层程序调用提供更简便的接口。
Linux 内核:操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、文件和网络系统等,决定着系统的性能和稳定性。
设备驱动:设备驱动负责驱动系统的相关硬件,使其正常的发挥作用。
对于 GNU/Linux 这样一个复杂的操作系统,逐步的明白其目录结构以及系统结构,对于用户了解 GNU/Linux 系统会有很大的帮助,希望本文能让大家对 GNU/Linux 系统的目录结构和系统结构有个初步的认识。