首页 > 代码库 > Linux的各个文件夹名称解释(FHS)

Linux的各个文件夹名称解释(FHS)

对于接触和已经接触过一段时间Linux的使用者来说,系统的各个文件夹名字还是挺让人费解的,什么etc,usr,var等等,大部分也是耳濡目染才有一个大概的概念,例如usr是存放自己编译安装的软件,etc是配置文件。但其实一个叫FHS(文件系统目录标准)早就为我们定义好这些东西,每个目录和层次(命名空间)的用途和规则也是有详细的定义。而大部分Linux发行版也是遵循这个标准来组织系统文件的。

目录名字通常包含三部分,范凑(scope)、分类(category)、应用(application)。

例如 /usr/local/share/vim 存放了应用程序VIM的数据,这里 /usr/local 即为范畴,/share即为分类,vim即为应用程序

范畴(scope):

从更抽象的角度描述整个目录的体系结构。

# /                     Linux的系统文件# /usr                更多Linux的系统文件# /usr/games    游戏# /usr/local        用户另外安装的软件包# /usr/X11         X Window系统的文件

注:/和/usr没有很明显的区别,只是抽象上说明/比/usr更接近系统。

分类(category):

用于描述文件夹下文件类型和作用

# bin                  可执行二进制或脚本# sbin                超级用户使用的可执行二进制或脚本# lib                   程序的库# man                可供man查看的手册# share              特定的程序文件,例如示例之类# etc                  程序的配置文件# src                  程序的源代码# dev                 系统的设备文件# var                  系统运行期间会改变的文件# run                  记录程序进程的PID文件# spool               过渡性文件,打印任务,定时任务,计划任务之类 

程序(application):

这个没啥好说,一般就是程序以自己名称命名的文件夹。(一般来说该目录下又可以有不同的分类文件夹,类似命名空间)

 

参考:

FHS标准:http://www.linuxfoundation.org/collaborate/workgroups/lsb/fhs

书籍:Linux口袋书 Oreilly出版,Daniel J. Barrett著

Linux的各个文件夹名称解释(FHS)