FHS文件系统各目录功能

    FHS文件系统各目录功能


前言                 1476583814901337.jpg

FHS (Files system Hiserarchy Standard) 文件系统目录标准。目前多数linux版本采用这种文件组织形式,类似于windows操作系统中的C盘的文件目录,FHS采用树形结构组织文件。定了系统中每个区域的用途、所需的最小构成的文件和目录,同时给出了例外处理与矛盾处理。

 

目录

一、FHS标准内容

二、目录树directory tree

三、FHS目录结构

参考资料

  

一、FHS标准内容

 FHS标准定义了两层规范第一层是/ 下面的各个目录应该放什么文件数据。第二层则是针对/usr及/var这两个目录的子目录来定义。例如/var/log 放置系统登录文件、/usr/share放置共享数据等等。这种定义使得软件可以预测已安装文件和文件夹的位置,用户可以预测已安装文件和文件夹的位置。

二、目录树directory tree

    另外,在linux中,所有的文件与目录都有根/目录开始。所有/是所有目录及文件的源头然后层层分下来,有点像树状,因此我们把这种目录配置方式称为“目录树directory tree” 这个目录树的主要特性有:

1、目录树的起始为根目录/ (见图1-1)

2、每个目录不仅能使用本地端分区,也可以使用网络上的文件系统。例如: 可以利用网络文件系统 network file system NFS 服务器载入某个特定的目录等。

3、同时每一个文件在此目录树种的文件名都是独一无二的。

特别注意的是以下两个特殊目录:

   .:表示当前目录,也可以用./来表示

  ..:表示上一层目录,也可以用../来表示。

QQ截图20161015162215.jpg

(图1-1)

三、FHS目录结构

FHS文件系统各目录功能.jpg

(图1-2)

         如图1-2所示在FHS所有的文件和目录都出现在根目录”/”下,即使他们存储在不同的网络设备中。但是请注意的是,这些目录中的一部分可能不会在您linux系统上出现,这取决与系统是否包含某些子系统,例如 Xwindows 系统的安装与否。

         这些目录中的绝大多数都在所有的linux操作系统中存在,并且一般都以大致类似的方法使用;然而,这里的描述是针对与FHS的并未考虑除linux平台以外的权威性。       

目  录

  描   述

/

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

/bin

需要在单用户模式可用的必要命令(可执行文件)面向所有的用户。例如 ls、cat、pwd、cp等.

/sbin

类似于/bin 存放系统二进制文件。因为其中大部分文件多是系统管理员使用的基本系统程序,虽然普通用户必要且允许时可以使用,但一般不会面向普通用户使用。例如命令:例如: init、 ip、 mount。等

/boot

存放引导程序文件;时常是一个单独的分区。Boot目录内存放都是系统启动的重要文件及目录例如vmlinuz(实际是系统所使用的kernel即内核文件)、System.map (系统kernel中的变量对应表)、initrd(系统启动时的模块供应主要来源)、grub(启动管理程序目录,多存放grub启动时所需画面、配置及各阶段文件)。

/dev

 必要的设备文件并包含linux系统所使用的所有外部设备。例如:/dev/null、/dev/zero 、/dev/cdrom等。

/usr

包含绝大多数的(多)用户工具和应用程序,存放用户使用的系统命令和应用程序等信息像命令帮助文件等。例如:/usr/bin、/usr/local、/usr/lib等。值得注意的是/usr目录是曾近还是用户的家目录后来被/home 目录取代。

/etc

系统程序的配置文件;包含很多文件许多网络配置文件也在/etc 中。例如/etc/rc、/etc/passwd 、/etc/sysconfig、/etc/fstab等

/srv

存放一些服务器之后启动之后需要提取的数据。包含由此系统提供的站点特定数据。指定这个的主要目的是让用户可以找到.特定服务的数据文件的位置,并由此提供服务。

/home

用户目录也是根目录下的一个子文件,是存放每个系统用户的文件的地方。普通用户的家目录集中位置,用户名同名子目录

/opt

表示的是可选择的意思,有些软件包也会被安装在这里,也就是自定义软件包。

/mnt

录是系统管理员临时安装(mount)文件系统的安装点。程序并不自动支持安装到/mnt 。/mnt 下面可以分为许多子目录,例如/mnt/dosa 可能是使用MSDOS文件系统的软驱,而/mnt/exta 可能是使用ext2文件系统的软驱,/mnt/cdrom 光驱等等。

/lib

目录包含引导系统和在根文件系统中运行命令所需的内核模块和共享库映像(C编程代码库)。通过/ bin和/ sbin中的二进制。库可以通过其* .so的文件名扩展名容易地识别。等同于共享库的Windows将是一个DLL(动态链接库)文件。它们对于基本系统功能至关重要。内核模块(驱动程序)位于子目录/ lib / modules /'kernel-version'中。为了确保正确的模块编译,你应该确保/   lib / modules /'kernel-version'/ kernel / build指向/ usr / src   /'kernel-version',或者确保Makefile知道内核源代码本身的位置。

/lib64

等同于/lib. 64 位版本通常存放在文件系统的/lib64 目录树中,而 32 位版本则位于 /lib 目录树中。 您可能会在 64 位 Linux系统中同时发现/lib/libc-2.11.1.so以及 /lib64/libc-2.11.1.so . 这两个库允许 32 位及 64 位 C 程序在 64 位 Linux 系统当中运行。

/tmp

此目录主要包含临时需要的文件。   许多程序使用它来创建锁定文件和临时存储数据。   不要从这个目录中删除文件,除非你知道你在做什么!这些文件对许多当前运行的程序很重要,删除它们可能会导致系统崩溃。   通常它不会包含超过几KB。   在大多数系统上,此目录在引导或由本地系统关闭时清除。   这一点的基础是历史先例和普遍做法。   但是,它不是要求,因为系统管理不在FSSTND(后来的FHS)的范围内。 因此,人和程序不能假定/ tmp中的任何文件或目录在程序的调用之间保留。

参考资料:

以上内容多取材于互联网各大博客论坛以及以下网站。

Linux文档项目http://www.tldp.org

  Linux 目录系统层次介绍:http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/

文件系统层次结构标准FHS维基百科介绍:https://zh.wikipedia.org/wiki/%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E5%B1%82%E6%AC%A1%E7%BB%93%E6%9E%84%E6%A0%87%E5%87%86

 

 

原创文章,作者:秋季,如若转载,请注明出处:http://www.178linux.com/51929

(0)
秋季秋季
上一篇 2016-10-17 08:35
下一篇 2016-10-17 08:35

相关推荐

  • linux特殊权限管理

    特殊权限:SUID, SGID, STICKY 正常情况下:  1、进程以某用户的身份运行; 进程是发起此进程用户的代理,因此以此用户的身份和权限完成所有操作; 2、权限匹配模型: (1) 判断进程的属主,是否为被访问的文件属主;如果是,则应用属主的权限;否则进入第2步; (2) 判断进程的属主,是…

    Linux干货 2015-12-19
  • 文件的查找命令 find 和 locate

    文件的查找命令 find 和 locate find 功能:实时查找工具,通过遍历指定路径完成文件查找 工作特点: •  查找速度略慢•  精确查找•  实时查找•  可能只搜索用户具备读取和执行权限的目录 语法:   find [OPTION]… [查找路径] [查找条件] [处理动作] 查找路径:指定具…

    Linux干货 2016-08-16
  • shell脚本中变量与运算及简单编程示例

    一、变量         在Linux shell脚本的变量中,分为系统定义的变量和用户定义的变量。这些变量是用来调用一个数值或字符值。定义变量时,不需要声明变量类型。 1、系统变量         …

    Linux干货 2016-08-15
  • ansible配置详解

    概述     ansible是一款无需在被管理主机上安装客户端,基于SSH对多台目标主机进行同时操作的轻量级的管理软件,借助各个内部的功能模块,实现了批量系统配置、批量程序部署、批量运行命令等功能。本篇就介绍一些关于ansible的基础配置相关的内容,具体包括:     1、an…

    Linux干货 2016-11-05
  • 马哥教育网络班22期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;       [root@localhost ~]#…

    Linux干货 2016-10-09
  • Vim编辑器使用详解

    Vim编辑器使用详解 vim介绍 为什么要学习vim vim三种模式 vim工作模式(图解) vim如何打开文件 vim关闭文件 命令模式光标跳转 字符间跳转: 单词间跳转: 行首行尾跳转: 行间移动: VIM的命令模式下的命令: 字符编辑: 替换命令(r, replace) 删除命令: 复制命令 粘贴命令(p, paste): : 其他相关的编辑操作: 翻…

    Linux干货 2016-09-06