1. 一般将文件和目录分为三组:

针对运行Linux的特定系统的唯一的文件和目录,例如启动脚本和配置文件;

在运行Linux的不同系统之间共享的只读文件和目录,例如可执行应用程序;

在运行Linux或其他操作系统的不同系统之间共享的可读可写的目录,例如用户主目录。

2. FHS定义的顶级结构目录:

/bin:必须,重要的系统二进制文件,包含可以被root用户和普通用户使用的二进制文件,可以在单用户模式下运行,即在其它一些目录结构还未装载的情况下也能单独运行。例如,cat、ls、sh。

/boot:必须,启动系统所需要的文件,文件长度不会超过100MB,通常为这个目录单独划分一个分区。

/dev:必须,设备文件,映射到硬件的特定设备文件,例如,/dev/hda将映射到第一个IDE磁盘。

/etc:必须,系统配置文件,例如,passwd文件(系统中用户的信息)、fstab文件(列出分区装载选项)、hosts文件(列出IP地址和主机名的映射关系)httpd目录(包含Apache服务器的配置文件)。

/home:非必须,用于放置用户文件的目录,每个用户都会在这个目录下有一个与他们的登录名相同的子目录,这个子目录就是他们的默认登陆目录。

/lib:必须,标准函数库,基本的共享函数库和内核模块,特别是那些在系统启动或系统位于单用户模式时需要用到的文件。

/mnt:必须,方便临时装载如CD-ROM和闪存棒等设备的目录,用来方便用户临时装载一些额外的文件系统,一般这个目录下还会有针对不同设备的子目录,例如子目录/cdrom和/floppy。

/opt:必须,额外的应用程序软件,这个目录开放给第三方厂商来使用,包含厂商名字的子目录,子目录中有/bin和/lib。大多数开放源码的Linux软件包将目录/usr/local作为它们的安装点。

/root:非必须,root用户的文件,没有被配置在/home目录下的原因是,在单用户模式下,/home目录可能未被装载系统。

/sbin:必须,在系统启动时需要的重要的系统二进制文件,只能由系统管理员使用的命令,以及在系统启动时或进入单用户模式时需要使用的命令。例如,fsck、halt、swapon等。

/tmp:必须,临时文件,系统通常会在启动时清理这个目录。

/usr:必须,第二级的目录层次,普通用户应该没有对/usr目录的写权限,是一个相当复杂的二级文件系统,通常包含除在系统启动或进入单用户模式所需要的文件以外的所有系统类的命令和函数库,子目录包括:/bin、/lib、/X11R6、/local。

/var:必须,可变的数据,如日志文件、打印的队列文件、邮件队列目录等。