FHS文件系统

一、什么是FHS?

  Filesystem Hierarchy Standard(文件系统目录标准)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。

二、它的来源历史

  开发一套文件系统层次结构标准的进程始于1993年8月,标准努力重整Linux的文件和目录结构。FSSTND (英文Filesystem Standard),一个针对Linux操作系统的文件系统层次结构标准在1994年2月14日发布。 后续的修正版本分别在1994年10月9日和1995年3月28日发布。

  在1996年初,开发一个更加全面的、不仅解决Linux,而且解决其他类Unix系统目录层次结构问题的FSSTND的计划在BSD开发社区成员的协助下正式被采纳。因此,计划重点解决在类Unix系统上普遍存在的问题。 为了适应标准范围的扩充,标准的名称修改为文件系统层次结构标准。

三、目录结构

目录 描述

/

第一层次结构的根、整个文件系统层次结构的根目录。

/bin/

需要在单用户模式可用的必要命令(可执行文件);面向所有用户,例如:catlscp

/boot/

程序引导时所加载的静态文件,内核和ramdisk及grub等

/dev/

所有设备文件的存储位置

/etc/

特定主机,系统范围内的配置文件

  • /etc/opt/

/opt/的配置文件

  • /etc/X11/

X Window系统的配置文件

  • /etc/sgml/

SGML的配置文件

  • /etc/xml/

XML的配置文件

/home/

用户的家目录,包含保存的文件、个人设置等,一般为单独的分区。

/lib/

基本的共享库文件以及内核模块

/media/

便捷式文件系统挂载点

/mnt/

临时挂载的文件系统。

/opt/

第三方程序安装目录

/proc/

虚拟文件系统,将内核进程状态归档为文本文件。

/root/

超级用户家目录

/sbin/

必要的系统二进制文件,例如 init、 ip、 mount。

/srv/

站点的具体数据,由系统提供。

/tmp/

临时文件,在系统重启时目录中文件不会被保留。

/usr/

用于存储只读用户数据的第二层次; 包含绝大多数的用户工具和应用程序。

  • /usr/bin/

非必要可执行文件 (在单用户模式中不需要);面向所有用户。

  • /usr/include/

标准包含文件。C语言的头文件

  • /usr/lib/

/usr/bin//usr/sbin/中二进制文件的

  • /usr/sbin/

非必要的系统二进制文件。

  • /usr/share/

体系结构无关(共享)数据。

  • /usr/src/

源代码,例如:内核源代码及其头文件。

  • /usr/local/

本地数据的第三层次, 具体到本台主机。通常而言有进一步的子目录,例如bin/lib/share/.

/var/

变量文件——在正常运行的系统中其内容不断变化的文件,如日志,脱机文件和临时电子邮件文件。有时是一个单独的分区。

  • /var/cache/

应用程序缓存数据。这些数据是在本地生成的一个耗时的I/O或计算结果。应用程序必须能够再生或恢复数据。缓存的文件可以被删除而不导致数据丢失。

  • /var/lib/

状态信息。 由程序在运行时维护的持久性数据。例如数据库、包装的系统元数据等。

  • /var/lock/

锁文件,一类跟踪当前使用中资源的文件。

  • /var/log/

日志文件,包含大量日志文件。

  • /var/mail/

用户的电子邮箱

  • /var/run/

自最后一次启动以来运行中的系统的信息,例如当前登录的用户和运行中的守护进程。现已经被/run代替。

  • /var/spool/

等待处理的任务的脱机文件例如:打印队列和未读的邮件。

  • /var/spool/mail/

用户的邮箱(不鼓励的存储位置)

  • /var/tmp/

在系统重启过程中可以保留的临时文件。

/run/

代替/var/run目录。

原创文章,作者:刘 祥宇,如若转载,请注明出处:http://www.178linux.com/51945

(0)
刘 祥宇刘 祥宇
上一篇 2016-10-17 08:35
下一篇 2016-10-17 08:35

相关推荐

  • N26-第五周-孙逸

    1、 显示当前系统上root、fedora或user1用户的默认shell;命令:cat /etc/passwd | grep -E “^(root|fedroa|user1)” | cut -d: -f1,7 2、 找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(…

    2017-03-10
  • CentOS 系统自动化安装

    CentOS 系统自动化安装 概述:     系统安装过程     配置anaconda     自动化安装系统 CentOS 系统安装: 1.启动流程: bootloader–>kernel(initrd)–>rootfs–>anaconda(…

    Linux干货 2016-09-21
  • Linux命令帮助的获取

    帮助命令 1. 使用帮助命令和帮助选项来获取帮助 2. 使用man来查看命令使用手册(manual) 3. 使用info来查看命令的信息页 4. 程序自身的帮助文档(README/INSTALL/ChangeLog) 5. 程序官方文档(官方站点:Documentation) 6. 发行版的官方文档…

    Linux干货 2016-06-01
  • linux计划任务

    任务计划的分类: 一次性的任务计划:只执行一次 周期性的任务计划:每隔一定的周期去做相同的事情 设置任务计划功能的工具:at和crontab at:专门处理一次性的计划任务 crontab:根据定义的周期信息,循环做一些事情 batch:系统自行选择空闲时间去执行此处指定的任务 At命令: 查看atd状态和启动atd服务及其配置文件路径: centos6:s…

    2017-09-09
  • 实例;编译安装apache 2.2,并启动此服务

    基于c语言的源代码编译安装,通常有三个步骤     ./configure         (1)通过选项传递参数,指定启用特性,安装路径等:执行时会参考用户的指定以及makefile.in文件生成makefile.  &nbsp…

    Linux干货 2016-08-24
  • shell脚本编程之循环语句

      在运行脚本时重复执行一系列的命令是很常见的,这时我们就需要使用循环语句来达到这个目的。 一、for命令   格式:for 变量 in 列表;do          循环体       done   for命令会遍历列表中的每一个值,并且在遍历完成…

    Linux干货 2016-01-03