LINUX FHS

时间:2019-04-29 03:17:32  来源:igfitidea点击:

Linux FHS-文件层次结构标准

FHS(文件层次结构标准)定义了Linux系统的目录结构和目录内容。FHS由Linux基金会维护。大多数现代Linux发行版都遵循FHS标准。

在FHS中,所有文件和目录都出现在根目录/下。

FHS目录结构

Linux目录结构说明

目录描述
/整个文件系统层次结构的根目录
/bin基本命令二进制文件
/boot引导加载程序文件。
/dev设备文件
/etc主机特定的系统范围的配置文件
/home用户主目录
/lib/bin和/sbin必不可少的库
/media可移动媒体的安装点
/mnt临时挂载的文件系统
/opt可选的应用程序软件包
/proc包含有关进程,内核文件(procfs安装)信息的虚拟文件系统
/root根用户的主目录
/sbin基本系统二进制文件
/srv网站特定数据
/tmp临时文件。
/usr只读用户数据的二级层次结构
/usr/bin非基本命令二进制文件
/usr/include标准包含文件
/usr/lib/usr/bin和/usr/sbin中二进制文件的库
/usr/lib/usr/bin和/usr/sbin中二进制文件的库
/usr/local本地数据。通常包含子目录bin/,share/
/usr/sbin非基本系统二进制文件
/usr/share架构共享独立数据
/usr/src内核源代码
/var可变文件,例如日志文件,假脱机文件,临时电子邮件文件。
/var/cache应用程序缓存文件
/var/lock锁定档案
/var/log各种日志文件
/var/mail用户邮箱
/var/运行自上次启动以来有关正在运行的系统的信息
/var/spool后台处理任务等待处理-打印队列-未读邮件
/var/tmp引导之间保留的临时文件

操作系统内核:/boot

/boot目录包含实际的操作系统。在此目录中,您将找到Linux内核vmlinuz。在这里,您还将找到用于系统引导程序的各种文件。在较旧的系统上,它们可能是Lilo,在较新的系统上,它们将会是GRUB。我们将在以后的主题中介绍引导加载程序。

通用实用程序:/bin

在这里,您将找到系统启动所需的许多重要系统文件。您还将找到有助于恢复系统的文件。系统修复或系统引导过程中不需要的基本程序都不应存放在/usr /bin中。

系统二进制文件:/sbin

该区域包含启动或修复损坏系统所需的程序。这些文件通常仅由root用户用于系统配置和管理目的。普通用户可以使用此处的某些程序,但是它们无法更改系统。

##系统库:/lib

这是共享库的所在地。/bin和/sbin中的程序将共享存储在此处的代码。

设备:/dev

设备文件提供了外壳程序与内核中的设备驱动程序之间的连接机制。在该区域内,设备称为字符设备。这些设备可以通过其标签cb轻松识别。

crw-rw-rw- 1 root root 1, 3 Feb 2 20:20 null
brw-rw---- 1 root disk 8, 0 Feb 2 20:20 sda
brw-rw---- 1 root disk 8, 1 Feb 2 20:20 sda1
brw-rw---- 1 root disk 8, 2 Feb 2 20:20 sda2
brw-rw---- 1 root disk 8, 5 Feb 2 20:20 sda5
brw-rw---- 1 root disk 8, 16 Feb 2 20:20 sdb
brw-rw---- 1 root disk 8, 32 Feb 2 20:20 sdc
brw-rw---- 1 root disk 8, 48 Feb 2 20:20 sdd
brw-rw---- 1 root disk 8, 64 Feb 2 20:20 sde
brw-rw---- 1 root disk 8, 80 Feb 2 20:20 sdf
crw-rw----+ 1 root cdrom 21, 0 Feb 2 20:20 sg0
crw-rw---- 1 root disk 21, 1 Feb 2 20:20 sg1
crw-rw---- 1 root disk 21, 2 Feb 2 20:20 sg2
crw-rw---- 1 root disk 21, 3 Feb 2 20:20 sg3
crw-rw---- 1 root disk 21, 4 Feb 2 20:20 sg4
crw-rw---- 1 root disk 21, 5 Feb 2 20:20 sg5
crw-rw---- 1 root disk 21, 6 Feb 2 20:20 sg6

您会注意到它们没有列出文件大小信息。相反,您会发现两个数字。第一个数字主要设备指定设备类型以及哪个内核驱动程序负责该设备。第二个数字表示次设备。该数字区分类似的设备,例如磁盘分区。在上面的示例中,我们可以看到我们的SCSI磁盘由主要数字8(scsi)标识,次要数字标识分区(sda1,sda2和sda5)。

另外 /dev/null 是一个伪设备。

配置文件:/etc

这是大多数程序的主要配置区域。导入启动文件(例如/etc/fstab/etc/inittab/etc/init.d/*)保留在此处。可以在这里找到许多其他导入文件。这些文件允许普通用户(/etc/shadow除外)进行读取访问,但是,在大多数情况下,只有root才能进行更改。

可选:/opt

该区域通常用于第三方软件安装。

进程信息:/proc

该区域包含有关运行进程,内核信息,模块的大量信息。这样的文件系统不是真正的文件系统。信息不会占用磁盘空间。可在此处找到有关此特殊文件系统的更多信息:了解Procfs

/sys

这还是另一个类似于/proc的特殊文件系统。此文件系统自Linux内核2.6版开始出现。它包含有关您的硬件的信息。

变量:/var

该区域通常用于包含来自系统以及来自其他已安装软件的日志文件。在/var/log下,您会找到重要的日志文件,例如dmesg和syslog。这些将在后面详细介绍。

临时文件:/tmp

临时文件的存储区域。许多系统会在系统启动时清除该区域。

服务器文件:/srv

在这里,您将找到各种Web服务器,ftp程序的文件。