FHS文件系统各目录功能

FHS 

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

1476589741975459.png

FHS定义了两层规范,第一层是,根目录(/)下各个主要目录应放什么文件,如/etc应放设置文件。第二层则是针对/usr和/var这两个目录的子目录来定义的.

显示root下的目录

[root@localhost ~]# ls /

bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  

目录 应放置的文件内容
/ 根目录是系统启动时第一个载入的分区,所以,所有启动过程会用到的文件都应该放在这个分区中(/etc,/bin,/dev,/lib,/sbin这5个子目录都应该与根目录连在一起,不可独立成某个分区)。建议不用在根目录下方

/bin/usr/bin

/usr/local/bin


置用户可执行的二进制文件的目录
/boot

放置linux系统启动时用到的文件。这个目录下有linux的核心文件vmlinz。如果引导程序选择grub,那么这个目录还有/boot/grub子目录

/dev

访问这个目录的文件,就等于访问某台设备(任何设备都是以文件的形式放在这个目录)。有字符设备(键盘,鼠标等)和块设备(硬盘,光盘等)。在此设备下会多出两个属性,主设备号和辅设备号,系统核心就是通过这两个号码来判断设备。

/etc 系统主要的设置文件都放在这个目录内。在此目录下几乎都是纯文本文件,FHS建议不要在此目录放执行文件。通常目录下的各个属性可被一般用户查看,但只有root有权修改。
/home 一般用户的默认家目录都放在这里

/lib

/usr/lib

/usr/local/lib

系统使用的函数库的目录。/lib/modules目录内有核心的相关模块。

/lost+found 系统出现异常,产生错误时,会将一些遗失的片段放在此目录下,通常这个目录会自动产生出现在某个分区最顶层的目录下
/mnt

软盘和光盘的默认载入点(通常软盘挂在/mnt/floppy下,光盘挂在/mnt/cdrom下)

/opt

给主机额外安装软件所方的目录。

/proc 这个目录本身是一个“虚拟文件系统”,它放置的数据都在内存中,如系统核心、形成信息、外部设备的状态和网络状态等。它不占用硬盘空间。
/root 系统管理员的家目录

/sbin

/usr/sbin

/usr/local/sbin

放一些系统管理员才会用到的执行命令(mount,fsck,fdisk等),这个目录是给系统管理员用的,一般用户只可查看不可设置该目录下的执行文件
/srv

一些服务启动后,这些服务所需要访问的数据目录。如WWW服务器需要的网页数据就可以放在/srv/www中

/tmp

一般用户和正在执行的程序临时放置文件的地方,这个目录是任何人都可以访问的,所以要定时清理

/usr

该目录下包含系统的主要程序、图形界面首先要的文件、额外的函数库、本机自行安装的软件,已经共享的目录与文件。它有点像Windows下的Program files和winNT的集合。

l         /usr/include:c、c++等程序语言的文件头与包含文件放置处,当以tarball方式安装某些数据时,会使用到里面许多的包含文件。

l         /usr/share:共享文件放置的目录。

l         /usr/src:Linux系统相关的程序代码放置处,如/usr/src/linux为核心代码

l         /usr/X11R6:系统内的X Window所需的执行文件基本都放在这里

/var

主要放置系统执行过程中经常变化的文件。

l         /var/cache:程序文件在运行过程中的一些暂存盘

l         /var/lib:程序执行过程中,使用的数据文件放置的目录。例如,locate数据库和MySQL以及rpm等数据库系统都放在这里

l         /var/log:登录文件放置的目录。如:/var/log/message就是总管所有登录文件的文件

l         /var/lock:某些设备有被一次性写入的特性,如tab(磁带机),为了要避免被其他人干扰正在运行的操作,会将该设备lock起来,以确定只能被单一程序使用。

l         /var/run:某些程序或服务启动后会把它们的pid放在总这个目录

l         /var/spool:是一些队列数据存放的地方。

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

(0)
yangtianyangtian
上一篇 2016-10-16 10:32
下一篇 2016-10-16 12:16

相关推荐

  • 学习宣言

    纸上得来终觉浅,绝知此事要躬行博学之,审问之,慎思之

    Linux干货 2016-10-24
  • iptables/netfilter入门到进阶

    防火墙的概念 Firewall:工作于主机或网络边缘,对于进出本主机或网络的报文根据事先定义的规则作匹配检测,对于更改被规则匹配到的报文做出相应处理的组件 网络层防火墙(包过滤防火墙): 优点:对用户来说透明,处理速度快且易于防护 缺点:一旦黑客突破防火墙,就可以请以伪造数据包源地址、目的地址和IP端口号 代理服务型防火墙(Proxy Service) 优点…

    2017-06-17
  • Linux磁盘管理详解

    linux磁盘管理 添加磁盘步骤: fdisk 管理磁盘分区 格式化文件系统。 设备挂载 开机自动挂载 UUID挂载 取消挂载点 Parted(gpt大于2G分区) 查看文件系统的使用情况。 df 查看挂载信息与磁盘使用量 du 查看使用量 查看分区状况lsblk 查看设备信息blkid linux磁盘管理 当全新安装了一块新的硬盘设备后,为了更充分、安全的…

    Linux干货 2016-09-07
  • Linux的硬链接与软链接

    Linux 的硬链接与软链接 文件由文件名与数据组成,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 inode 号(inode…

    Linux干货 2016-10-25
  • Shell脚本编程

    shell脚本编程 Bash为用户提供了编程环境 相对于计算机而言,只能识别二进制文件,因此其所运行的其实是二进制指令,而这些二进制指令我们称之为机器语言,属于低级语言;程序员编程所使用的语言为高级语言,是人们比较容易理解的语言;因此,程序的执行过程:先把源码程序翻译成机器语言(生成可执行的文件),然后解释执行。程序( 程序=指令+数据 )的编程风格有两种:…

    2017-04-14
  • Linux基础—磁盘管理

    1、创建一个10G分区、并格式化为ext4文件系统 1)要求其block大小为2048,预留空间百分比2,卷标MYDATA,默认挂载属性包含acl 2)挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 #mkfs.ext4 -b 2048 -m 2 -L my…

    Linux干货 2016-11-17