Linux 文件系统层次结构(FHS)解释
详细的目录解释可以使用 man file-hierarchy 和 man hier 命令查看。
常见目录:
| 目录 | 描述 |
|---|---|
/bin |
binaries。在单用户模式下需要用到的基本命令的二进制文件,包括启动系统或修复系统所需的命令,所有用户都可以使用。目前 /bin 目录大多被链接到 /usr/bin 了 |
/sbin |
system binaries。系统必要的二进制文件,系统管理员可用。目前 /sbin 目录大多被链接到 /usr/sbin 了 |
/usr |
UNIX shared resources,只读用户数据的二级层次结构,包含大多数用户工具和应用。应该是可共享和只读的。 |
/usr/bin |
非必要命令的二进制文件,所有用户都可以使用。 |
/usr/sbin |
非必要命令的系统二进制文件。系统管理员可用。 |
/usr/lib |
/usr/bin 和 /usr/sbin 中二进制文件的库文件。 |
/usr/lib32 |
替代格式库文件,在 64 位机器上提供 32 位库文件。 |
/usr/libexec |
由其他程序运行的二进制文件,不打算由用户或 shell 脚本直接执行。 |
/usr/share |
存储与架构无关的共享资源,如字体文件 |
/usr/include |
标准 include 文件。如 stdio.h |
/usr/src |
源代码(例如,带有头文件的内核源代码) |
/usr/local |
本地数据的第三级层次结构,特定于主机。通常具有进一步的子目录(例如,bin,lib,share) |
/usr/local/bin |
用于存放通过源代码编译安装或非标准包管理器安装的软件的可执行文件 |
/usr/local/etc |
存储在/usr/local目录下安装的软件的配置文件 |
/var |
variable。变量文件:这些文件的内容在系统运行期间会不断变化,例如日志、spool 文件和临时电子邮件文件。 |
/var/log |
日志文件 |
/var/lib |
状态信息。程序运行时被程序修改的持久化数据(例如数据库、打包系统元数据等)。MySQL 的数据库文件的存储位置就在 /var/lib/mysql |
/var/opt |
存储在 /opt 中的附加软件包的变量数据。 |
/var/tmp |
重启之间需要保留的临时文件。 |
/etc |
Editable Text Configuration(名称存在争议)。存储系统范围的配置文件 |
/etc/opt |
存储在 /opt 中的附加软件包的配置文件。 |
/mnt |
mount。临时挂载的文件系统。 |
/dev |
device。设备文件(例如 /dev/null,/dev/disk0,/dev/sda1,/dev/tty,/dev/random) |
/opt |
optional。附加应用软件包。和 /usr/local/bin 的区别在于 /opt 往往用来存放大型软件包,每个软件包可以拥有自己独立的目录,如 /opt/<application> |
/sys |
包含有关设备、驱动程序和一些内核功能的信息。 |
/proc |
是一个虚拟的文件系统,将进程和内核信息以文件的形式提供。在 Linux 中,对应于 procfs 挂载。通常由系统自动生成并动态填充。 |
/tmp |
临时文件目录(另请参阅 /var/tmp )。通常在系统重新启动之间不会保留,并且可能受到严格的大小限制。 |
FHS
文件系统层次结构标准(FHS)是描述类 Unix 系统层次结构惯例的参考文献。它因在 Linux 发行版中的使用而广为人知,但其他类 Unix 系统也在使用。它由 Linux 基金会维护。最新版本是 FHS 3.0,于 2015 年 6 月 3 日发布。
一些发行版通常遵循标准,但在某些领域有所偏离。FHS 是一个“尾随标准”,因此记录了某一时刻的常见做法。当然,时代在变化,发行版的目标和需求需要进行实验。一些常见的偏离包括:
现代 Linux 发行版包括一个 /sys 目录作为虚拟文件系统(sysfs,类似于 /proc ,它是一个procfs),用于存储和允许修改连接到系统的设备,而许多传统的类 Unix 操作系统使用 /sys 作为指向内核源代码树的符号链接。
许多现代类 Unix 系统(如 FreeBSD 通过其 ports 系统)将第三方软件包安装到 /usr/local 中,同时将被视为操作系统一部分的代码保留在 /usr 中。
一些 Linux 发行版不再区分 /lib 和 /usr/lib ,并将 /lib 符号链接到 /usr/lib。
一些 Linux 发行版不再区分 /bin 和 /usr/bin ,以及 /sbin 和 /usr/sbin 之间的区别。它们可能会将 /bin 符号链接到 /usr/bin,将 /sbin 符号链接到 /usr/sbin。其他发行版选择将所有四个整合在一起,将它们符号链接到 /usr/bin。
参考:File Hierarchy Standard | Wikipedia
Linux 文件系统层次结构(FHS)解释的更多相关文章
- Linux文件系统层次结构标准FHS
文件系统层次结构标准(英语:Filesystem Hierarchy Standard,FHS)定义了Linux操作系统中的主要目录及目录内容.FHS由Linux基金会维护. 当前版本为3.0版,于2 ...
- Linux文件系统层次结构标准
该标准的目的是定义Linux文件系统的标准路径,使得开发者和用户可以在合理的位置找到需要的东西. Linux的文件布局的大体想法是将文件和目录分为如下3组: 对运行Linux的某一特定系统唯一的文件和 ...
- (12)Linux文件系统层次结构
在 Linux 操作系统中,所有的文件和目录都被组织成以一个根节点"/"开始的倒置的树状结构 文件系统的最顶层是由根目录开始的,系统使用"/"来表示根目录,在根 ...
- Linux:文件系统层次结构标准(Filesystem Hierarchy Standard)
Linux FHS_2.3标准文档:http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.pdf
- Linux文件系统深度讨论【转】
本文旨在对Linux文件系统概念高级工作方式进行的讨论,不是对特定文件系统类型(如EXT4)如何工作的低级描述,也不是对文件系统命令的教程. 每台通用计算机都需要将各种类型的数据存储在硬盘驱动器( ...
- Linux 文件系统概览
本文导航 -定义07% -文件系统的基本功能12% -目录结构26% -Linux 统一目录结构50% -文件系统类型74% -挂载81% -结论90% -下个月92% 本文旨在高屋建瓴地来讨论 ...
- Linux 学习手记(2):Linux文件系统的基本结构
Linux 文件系统概况 Linux文件系统为一个倒置的树状结构,所有文件或文件夹均包含在一个根目录“/”中.如图所示(每个目录的作用可以参考:Linux目录结构说明): Linux系统严格区分大小写 ...
- 02_Linux基础-文件系统层次结构-提示符-进程-命令格式-隐藏文件-通配符-绝对相对路径-{1..100}-ls-mkdir-其他基础命令
02_Linux基础-ls-mkdir-cd-pwd-man-useradd-su-rm-tree-tab-passwd-w-ssh-touch-date-stat-cp-mv-du-文件系统层次结构 ...
- [Linux]Filesystem Hierarchy Standard/文件系统层次结构标准(FHS for Linux)
1 文件系统层次结构标准 本篇文章为维基百科中关于FHS的译文,原文见 wiki:https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard ...
- 文件系统层次结构标准 Linux 系统目录结构
https://zh.wikipedia.org/wiki/文件系统层次结构标准 多数Linux发行版遵从FHS标准并且声明其自身政策以维护FHS的要求. [3] [4] [5] [6] 但截至200 ...
随机推荐
- NAT类型发现
一.前言 之前一篇文章中,提出了一个判断NAT类型的方案.该方案是自己研究设计的,比较粗糙.近期研读了关于STUN的一些协议标准,其中RFC3489中就包含了判断NAT类型的标准方案. 与自己设计的方 ...
- Meilisearch 安装和使用教程
如今搜索功能已成为几乎所有应用不可或缺的一部分.无论是电商平台.内容管理系统,还是企业内部知识库,用户都期待能够快速.准确地找到他们需要的信息.然而,传统的搜索解决方案往往面临着诸多挑战:响应速度慢. ...
- Web 安全:OWASP TOP10 漏洞介绍
OWASP TOP 10漏洞是指由Open Web Application Security Project(OWASP)发布的十大最严重. 最普遍的Web应用程序安全漏洞.这些漏洞在当今的Web应用 ...
- Docker 根据网络名称批量断开与之相连的容器shell实现
实践环境 Centos7 Docker 20.10.5 问题描述 使用 docker-compose down 命令关闭容器时,提示类似以下错误: Removing network xxx_defau ...
- 题解:CF1971C Clock and Strings
题解:CF1971C Clock and Strings 题意 在上图的一个圆中,给予你四个点 \(a,b,c,d\),判断线段 \(ab\) 与线段 \(cd\) 是否相交. 思路 先设置一个字符串 ...
- 深入浅出分析最近火热的Mem0个性化AI记忆层
最近Mem0横空出世,官方称之为PA的记忆层,The memory layer for Personalized AI,有好事者还称这个是RAG的替代者,Mem0究竟为何物,背后的原理是什么,我们今天 ...
- VUE系列之性能优化--懒加载
一.懒加载的基本概念 懒加载是一种按需加载技术,即在用户需要时才加载相应的资源,而不是在页面初始加载时一次性加载所有资源.这样可以减少页面初始加载的资源量,提高页面加载速度和用户体验. 二.Vue 中 ...
- android常用布局基础学习
总结:可水平放置可垂直放置也可穿插使用,默认为水平 <!--我在第一次使用权重的时候忽视了本线性布局中的宽度与高度,如果要使用权重,请将线性布局的最初大小设置为match_parent,否则不会 ...
- 老旧 Linux 系统搭建现代 C++ 开发环境 —— 基于 neovim
问题背景 公司配发的电脑是 macOS,日常开发需要访问 Linux 虚拟机,出于安全方面的考虑,只能通过跳板机登录.这阻止了大多数远程图形界面的使用,让写代码的工作变得复杂起来,市面上非常好用的 V ...
- 【爬虫】Java爬取KFC全国门店信息
官网地址: http://www.kfc.com.cn/kfccda/storelist/index.aspx 基础库 <dependencies> <dependency> ...