linux 基础(4)文件结构标准 FHS
使用 linux 进行各种各样开发的人实在太多了,因此一套统一的“什么文件存放在哪里”的规范应运而生,被称为 FHS(Filesystem Hierarchy Standard)。
FHS 首先将文件分为四类:1)可分享的文件,指可以分享给其他系统拿去共享挂载的目录;不可分享的,指只与本机运行相关的没有分享意义的文件。2)不常变的文件,指随着系统更新一般不会改变的配置文件;可变动的文件,指经常改变的文件。
| 例子 | 可分享的 | 不可分享的 |
|---|---|---|
| 不变的 | 应用程序 | 配置文件 内核文件 |
| 变动的 | 邮件 | 程序运行的临时文件 |
FHS 定义了这三个目录:
- /(root 根目录)
- /usr (Unix software resources 软件存放 注意并不是 user 的缩写)
- /var (variable)
根目录 /
根目录是系统最重要的目录,他和系统的开启、运行修复等息息相关。根目录通常需要这些目录:
| 目录 | 内容 |
|---|---|
| /bin | 放置 cat,cp这样基本命令的目录,与/usr中的命令的区别是,他们在单人维护模式荏苒能使用 |
| /boot | 这个目录主要在放置开机会使用到的文件,包括Linux核心文件以及开机菜单与开机所需配置文件等等。 |
| /dev | linux中,目录以特殊文件的形式存在,通过存储这里的文件操控设备 |
| /etc | 储存各种配置文件 |
| /lib | 储存函数库 |
| /media | 放置各种媒体储存设备 |
| /mnt | 用于挂载设备 |
| /opt | 用于安装第三方软件 |
| /run | 储存开机后的运行信息 |
| /sbin | 储存系统相关的高级命令,他们用于系统修复管理,一般只有root可以使用 |
| /srv | 服务service,用于放置一些服务所需的数据 |
| /tmp | 所有程序都可以使用的临时文件目录 |
| /home | 存放使用者的主文件夹 |
| /lib64 | 储存64位的函数库 |
| /root | root 用户的主文件夹 |
| /lost+found | 文件系统发生错误时,一些数据会存放到这里 |
| /proc /sys | 储存系统核心,网络信息等,这个目录位于内存中,不占用磁盘 |
| /var | 第二层 FHS |
| /usr | 第二层 FHS |
如果使用救援模式,/etc、 /bin、 /dev、 /lib、 /sbin 通常是最重要的目录,他们要与根目录挂载到一起。
/usr 目录
usr 意为 Unix software resources,即存放程序的地方,相当于 Win 中的C:\Program Files。所有软件都应该把它们的数据安放在这个目录下。一般来说,/usr 下需要这些目录。
| 目录 | 内容 |
|---|---|
| /usr/bin | 一般用户能使用的指令,往往与 /bin 链接到一起,他们的内容是相同的 |
| /usr/lib/ | 储存函数库,往往与 /lib 链接到一起,他们的内容是相同的 |
| /usr/local | 一般来讲,不是通过;应用包管理而自行安装的软件建议集合到这里,local 下同样具有 bin,lib 等目录 |
| /usr/sbin | 储存正常运行以外的高级命令,通常链接到 /sbin |
| /usr/share/ | 一些可分享的数据,通常是一些文档说明,之下有 man doc 等目录 |
| /usr/games/ | 游戏 |
| /usr/include/ | 储存 c 和 c++ 的库头文件 |
| /usr/libexec | 储存一些不惯用的脚本 |
| /usr/src | 存放一些程序的源代码 |
/var 目录
这个目录储存程序运行时的各种数据,包括高速缓存(cache)、登录文件(log file)以及某些软件运行所产生的文件, 包括程序文件(lock file, run file)。通常拥有这些子目录。
| 目录 | 内容 |
|---|---|
| /var/cache | 储存程序运行的一些暂存数据 |
| /var/lib | 储存程序需要的数据文件,如 Mysql 的数据库 |
| /var/lock | 管理上锁的设备文件 |
| /var/log | 放置登录文件 |
| /var/mail | 储存个人邮箱 |
| /var/run | 储存应用运行后的一些信息,链接到/run |
| /var/spool | 储存暂未使用,排队等待使用的一些数据 |
linux 基础(4)文件结构标准 FHS的更多相关文章
- [Linux]Filesystem Hierarchy Standard/文件系统层次结构标准(FHS for Linux)
1 文件系统层次结构标准 本篇文章为维基百科中关于FHS的译文,原文见 wiki:https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard ...
- Linux目录文件详解FHS标准(2013.09.05)
Linux 目录配置的依据FHS(Filesystem Hierarchy Standard)标准,将目录分成为四种交互作用的形态: 四种形态的具体解释: 可分享的:可以分享给其他系统挂载使用的目录, ...
- Linux基础入门
第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...
- Linux 基础入门(新版)”实验报告一~十二
实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...
- 《信息安全系统设计基础》第一次实验报告--Linux 基础入门
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全设计基础 班级:1352 姓名:何伟钦 学号:20135223 成绩: 指导教师:娄嘉鹏 ...
- Linux基础入门学习笔记20135227黄晓妍
学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用L ...
- Linux基础命令和NAT技术
yum yellowdog updater,modified是一种用python写的基于rpm的管理工具 用于解决rpm包的依赖性 要安装编译工具 yum install gcc 库函数:静态库 ...
- Linux基础学习笔记2-文件管理和重定向
本节内容 1)文件系统结构元素 2)创建和查看文件 3)复制.转移和删除文件 4)软和硬链接 5)三种I/O设备 6)把I/O重定向至文件 7)使用管道 文件系统和结构 文件系统 文件和目录被组织成一 ...
- Linux基础培训知识点汇总
一.Linux简介1.Linux操作系统诞生于1991年10月5日,由林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生.2.Linux同时也衍生了很多版本( ...
- Linux基础知识回顾及BASH学习
2019-2020-030189224 <网络攻防技术与实践>第一周学习总结 Linux基础知识错题回顾 1.Linux中使用(B)命令新建空白文件. A .mkdir B .touch ...
随机推荐
- ubuntu系统grub修复(win+ubuntu双系统环境),修复无法启动问题 boot-repair
相关: https://help.ubuntu.com/community/Boot-Repair ================================================== ...
- Redis存储数组
建议使用PHP自带的序列化函数serialize和unserialize函数 <?php class MyRedis{ private static $handler; private stat ...
- Avnet ZUBoard 1CG开发板上手—深度学习新选择
Avnet ZUBoard 1CG 开发板上手-深度学习新选择 摘要 本文主要介绍了 Avnet ZUBoard 1CG 开发板的特性.架构.硬件单元等概念,并对如何使用以太网接口和串口连接开发板进行 ...
- AtCoder Beginner Contest 327 D
AtCoder Beginner Contest 327D D - Good Tuple Problem (atcoder.jp)(种类并查集,二分图染色) 算法学习笔记(7):种类并查集 附上典题: ...
- 面试必问之kafka
问题1:消息队列的作用 1. 解耦 快递小哥手上有很多快递需要送,他每次都需要先电话一一确认收货人是否有空.哪个时间段有空,然后再确定好送货的方案.这样完全依赖收货人了!如果快递一多,快递小哥估计的忙 ...
- Linux内核信号SIGIO使用实例讲解
一.信号 1. 基本概念 信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的.信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上, ...
- JavaScript设计模式样例十五 —— 状态模式
状态模式(State Pattern) 定义:创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象.目的:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类 ...
- zabbix 应用框架分析
本文通过源码分析,探究zabbix web应用的整体架构,所有分析基于zabbix 3.0.10进行. 总体而言,zabbix web应用使用PHP开发,大量应用OOP方法,主要采用mvc架构,同时包 ...
- LLM大模型基础知识学习总结
大家好,我是Edison. 在这个已经被AI大模型包围的时代,不了解一点大模型的基础知识和相关概念,可能出去聊天都接不上话.刚好近期我也一直在用GPT和GitHub Copilot,也刚好对这些基础知 ...
- 【YashanDB知识库】如何使用yasldr导入lob类型?
问题现象 在各个项目实施中,有时候会使用到yasldr工具进行csv数据的导入.关于yasldr一般的使用方法,官方文档已经有详细的介绍,具体可见:yasldr使用指导.但在涉及LOB类型的导入时,会 ...