linux目录详解

2021年9月28日10:13:57

 

目录结构

在 FHS 中,所有文件和目录都出现在根目录 / 下,即使它们存储在不同的物理或虚拟设备上。如果安装了某些子系统,例如 X Window 系统,则其中一些目录仅存在于特定系统上。

大多数这些目录存在于所有类 Unix 操作系统中,并且通常以大致相同的方式使用;但是,这里的描述是专门用于 FHS 的,对于 Linux 以外的平台不具有权威性。

目录描述
/ 整个文件系统层次结构的主层次根和根目录。
/bin 需要在单用户模式下可用的基本命令二进制文件;对于所有用户,例如cat、ls、cp。
/boot 引导加载程序文件,例如内核、initrd。
/dev 设备文件,例如, /dev/null , /dev/disk0 , /dev/sda1 , /dev/tty , /dev/random。
/etc 特定于主机的系统范围配置文件。

关于名称本身的含义一直存在争议。在贝尔实验室的 UNIX 实施文档的早期版本中,/etc 被称为etcetera 目录,因为该目录在历史上保存了不属于其他地方的所有内容(但是,FHS 将 /etc 限制为静态配置文件,并且可能不包含二进制文件)。 自从早期文档发布以来,目录名称已以各种方式重新解释。最近的解释包括诸如“可编辑文本配置”或“扩展工具箱”之类的首字母缩略词。

/etc/opt 存储在 /opt 中的附加包的配置文件。
/etc/sgml 用于处理 SGML 的软件的配置文件,例如目录。
/etc/X11 X Window 系统版本 11 的配置文件。
/etc/xml 用于处理 XML 的软件的配置文件,例如目录。
/home 用户的主目录,包含保存的文件、个人设置等。
/lib /bin 和 /sbin 中的二进制文件必不可少的库。
/lib<qual> 替代格式基本库。这些目录是可选的,但如果它们存在,它们有一些要求。
/media CD-ROM 等可移动媒体的挂载点(2004 年出现在 FHS-2.3 中)。
/mnt 临时挂载的文件系统。
/opt 可选的应用软件包。
/proc 提供进程和内核信息作为文件的虚拟文件系统。在Linux中,对应一个procfs挂载。通常由系统动态生成和填充。
/root root 用户的主目录。
/run 运行时变量数据:关于自上次启动以来正在运行的系统的信息,例如,当前登录的用户和正在运行的守护进程。此目录下的文件必须在引导过程开始时删除或截断,但在提供此目录作为临时文件系统 (tmpfs) 的系统上,这不是必需的。
/sbin 基本系统二进制文件,例如fsck、init、route。
/srv 该系统提供的特定于站点的数据,例如 Web 服务器的数据和脚本、FTP 服务器提供的数据以及版本控制系统的存储库(出现在 2004 年的 FHS-2.3 中)。
/sys 包含有关设备、驱动程序和一些内核功能的信息。
/tmp 临时文件(另见 /var/tmp)。通常不会在系统重新启动之间保留,并且可能会受到严格的大小限制。
/usr 只读用户数据的二级层次结构包含大多数(多)用户实用程序和应用程序。
/usr/bin 非必要的命令二进制文件(在单用户模式下不需要);对于所有用户。
/usr/include 标准包含文件。
/usr/lib /usr/bin 和 /usr/sbin 中二进制文件的库。
/usr/lib<qual> 替代格式库,例如/usr/lib32 用于 64 位机器上的 32 位库(可选)。
/usr/local 本地数据的三级层次结构,特定于该主机。通常还有更多子目录,例如bin 、 lib 、 share 。
/usr/sbin 非必要的系统二进制文件,例如各种网络服务的守护进程。
/usr/share 与架构无关(共享)的数据。
/usr/src 源代码,例如,内核源代码及其头文件。
/usr/X11R6 X Window System,第 11 版,第 6 版(最高 FHS-2.3,可选)。
/var 可变文件——在系统正常运行期间其内容预计会不断变化的文件——例如日志、假脱机文件和临时电子邮件文件。
/var/cache 应用程序缓存数据。由于耗时的 I/O 或计算,这些数据是在本地生成的。应用程序必须能够重新生成或恢复数据。可以删除缓存的文件而不会丢失数据。
/var/lib 状态信息。程序在运行时修改的持久数据,例如数据库、打包系统元数据等。
/var/lock 锁定文件。跟踪当前正在使用的资源的文件。
/var/log 日志文件。各种日志。
/var/mail 邮箱文件。在某些发行版中,这些文件可能位于已弃用的 /var/spool/mail 中。
/var/opt 来自存储在 /opt 中的附加包的变量数据。
/var/run 运行时变量数据。此目录包含描述系统自启动以来的系统信息数据。

在 FHS 3.0 中, /var/run 被替换为 /run ;为了向后兼容,系统应该继续提供 /var/run 目录,或者提供从 /var/run 到 /run 的符号链接。

/var/spool 等待处理的任务的假脱机,例如,打印队列和外发邮件队列。
/var/spool/mail 用户邮箱的弃用位置。
/var/tmp 在重新启动之间保留的临时文件。

以图示的方式,这里是文件系统的样子。其中一些目录也有标准文件 - 特别是 /bin、/etc 和 /sbin。

 

 

 

 

 

https://commons.wikimedia.org/wiki/File:Standard-unix-filesystem-hierarchy.svg

标准-unix-filesystem-hierarchy

 

参考:https://eng.libretexts.org/Bookshelves/Computer_Science/Operating_Systems/Linux_-_The_Penguin_Marches_On_(McClanahan)/04%3A_Managing_Linux_Storage/5.12%3A_Linux_Directory_Structure/5.12.01%3A_Linux_Directory_Structure_-_Hierarchy

posted on 2021-09-28 10:22  zh7314  阅读(377)  评论(0编辑  收藏  举报