FHS Filesystem Hierachy Standard
可分享的 shareable | 不可分享的 unshareable | |
不变的 static | /usr 软件放置处 /opt 第三方软件 |
/etc 配置文件 /boot 开机与内核文件 |
可变冻的 variable | /var/mail 用户邮件信箱 /var/spool/news 新闻组 |
/var/run 程序相关 /var/lock 程序相关 |
可分享的:可以分享给其他系统挂载使用的目录,能够分享给网络上其他主机挂载用的目录
不可分享的:自己机器上的文件,设备文件等
不变的:不同distribution不会有太大变动,函数库,说明文件等
可变动的:经常改变的数据,登录文件,新闻组等
实际上,FHS针对目录树架构仅定义出三层目录下应放置的数据
/ : 与开机系统有关
/usr (UNIX software resource):与软件安装/执行有关
/var (variable):与系统运作过程有关
/ 根目录下要有以下子目录才好,标红的目录不可与根目录分开放在不同的分区
/bin 系统放置执行文件的目录,cd cat等
/boot 放置开机会使用的文件
/dev 设备与接口都以文件形式存在于这个目录中
/etc 放置系统的主要的配置文件,帐号密码文件等,不要放置可执行文件在此目录中
/home 用户主文件夹
/lib 开机时会使用到的函数哭,以及在/bin 和 /sbin下面的命令会调用的函数
/media 可删除的设备,软盘,光盘,dvd等都暂时挂载于此
/mnt 也是暂时挂载,优先使用/media
/opt 第三方软件放置的目录
/root 系统管理员的主文件夹
/sbin 开机过程中需要的开机,修复,和还原系统需要的命令
/srv 一些网络服务启动之后,这些服务所需要取用的数据目录 WWW FTP
/tmp 正在执行的程序暂时存放文件的地方
/usr意义与内容
建议所有软件开发者应该将他们的数据合理地放置到这个目录下的子目录,而不要自行建立独立的目录
/usr/X11R6 为X Window系统放置重要数据的目录
/usr/bin 绝大部分用户可使用的命令都放在这里,与/bin不同之处在于与开机过程无关
/usr/include C/C++等程序语言的头文件与包含文件的放置处
/usr/lib 各种应用软件的函数库和目标文件,不被用户惯用的脚本存放目录。
/usr/local 安装第三方软件
/usr/sbin 非系统正常运行所需要的系统命令,如某些网络服务其软件的服务命令
/usr/share 放置共享文件/usr/share/man /usr/share/doc /usr/share/zoneinfo
/usr/src 源码
/var
/var/cache 应用程序本身运行过程中会产生的一些暂存文件
/var/lib 程序本身运行时,需要用到的数据文件放置的目录,/var/lib/mysql
/var/lock 独占文件的目录
/var/log 登录文件放置的目录
/var/mail 放置个人电子邮件信箱的目录,与/var/spool/mail目录内容一致
/var/run 程序或者服务启动后,会将他们的PID放置到这个目录下
/var/spool 放置一些队列数据,排队等待其他应用程序使用的数据,这些数据被使用后就会删除