使用 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的更多相关文章

  1. [Linux]Filesystem Hierarchy Standard/文件系统层次结构标准(FHS for Linux)

    1 文件系统层次结构标准 本篇文章为维基百科中关于FHS的译文,原文见 wiki:https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard ...

  2. Linux目录文件详解FHS标准(2013.09.05)

    Linux 目录配置的依据FHS(Filesystem Hierarchy Standard)标准,将目录分成为四种交互作用的形态: 四种形态的具体解释: 可分享的:可以分享给其他系统挂载使用的目录, ...

  3. Linux基础入门

    第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...

  4. Linux 基础入门(新版)”实验报告一~十二

    实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...

  5. 《信息安全系统设计基础》第一次实验报告--Linux 基础入门

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全设计基础 班级:1352  姓名:何伟钦  学号:20135223 成绩:            指导教师:娄嘉鹏 ...

  6. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  7. Linux基础命令和NAT技术

    yum    yellowdog updater,modified是一种用python写的基于rpm的管理工具 用于解决rpm包的依赖性 要安装编译工具 yum install gcc 库函数:静态库 ...

  8. Linux基础学习笔记2-文件管理和重定向

    本节内容 1)文件系统结构元素 2)创建和查看文件 3)复制.转移和删除文件 4)软和硬链接 5)三种I/O设备 6)把I/O重定向至文件 7)使用管道 文件系统和结构 文件系统 文件和目录被组织成一 ...

  9. Linux基础培训知识点汇总

    一.Linux简介1.Linux操作系统诞生于1991年10月5日,由林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生.2.Linux同时也衍生了很多版本( ...

  10. Linux基础知识回顾及BASH学习

    2019-2020-030189224 <网络攻防技术与实践>第一周学习总结 Linux基础知识错题回顾 1.Linux中使用(B)命令新建空白文件. A .mkdir B .touch ...

随机推荐

  1. 新购的HP品牌台式机(暗影精灵,自带windows10系统,显卡为RTX2080,CPU为i7-10700)安装双系统(Ubuntu系统),不识别显卡,不识别硬盘 —— 解决方案

    事件起因是实验室的师弟要弄深度学习,实验室为其新购一台台式机(HP台式机,暗影精灵,自带windows10系统,显卡为RTX2080,CPU为i7-10700),师弟是满心喜悦的在windows系统上 ...

  2. baselines算法库的安装——Ubuntu20.04系统使用anaconda环境配置

    baselines算法库不做过多介绍,个人认为这是公开是所有reinforcement learning算法库中最权威的,虽然没有后期更新,也就是没有了学术界的state of the art ,  ...

  3. Spring Boot 中使用 JSON Schema 来校验复杂JSON数据

    JSON是我们编写API时候用于数据传递的常用格式,那么你是否知道JSON Schema呢? 在数据交换领域,JSON Schema 以其强大的标准化能力,为定义和规范 JSON 数据的结构与规则提供 ...

  4. 海豚调度任务类型Apache SeaTunnel部署指南

    Apache DolphinScheduler已支持Apache SeaTunnel任务类型,本文介绍了SeaTunnel任务类型如何创建,任务参数,以及任务样例. 一.Apache SeaTunne ...

  5. AtCoder Beginner Contest 310

    freee Programming Contest 2023(AtCoder Beginner Contest 310) - AtCoder A - Order Something Else (atc ...

  6. layui表格中格式化日期

    layui表格中格式化日期 //1.引入 util layui.use(['table', 'admin'], function () { var util = layui.util; //2.表格内 ...

  7. 进行中 10% 手机Root安装银河麒麟ARM系统,或其它的CentOS系统

    计划中: 预计开始时间: 最早开始3/12 预计结束时间:最早3/13号 计划过程: 1. 手机root 2. 安装系统 目前:1. 我的旧旧旧手机,是红米note5,然后我进了官网,想要解锁, 解锁 ...

  8. IEEE754浮点数表示形式

    IEEE754浮点数表示形式 IEEE754浮点数官方文档:https://ieeexplore.ieee.org/document/8766229 浮点数的上述表示形式,既没有规定阶码和尾数的位数, ...

  9. 【笔记】利用七牛云CDN加速提高前端图片静态资源访问速率

    第一步,注册七牛云账号 打开 七牛开发者平台,选择 注册,注册后登录系统然后实名认证. 第二步,创建七牛云空间 七牛对象存储将数据文件以资源的形式上传到空间中.您可以创建一个或者多个空间,然后向每个空 ...

  10. Angular 18+ 高级教程 – Animation 动画

    前言 Angular 有一套 built-in 的 Animation 方案.这套方案的底层实现是基于游览器原生的 Web Animation API. CSS Transition -> CS ...