随着linux的发行版本越来越多,linux系统之间的差异性也越来越大,为了保证使用者在使用不同的linux发行版本都能够了解linux系统目录结构和作用,于是便制定的FHS标准(Filesystem Hierarchy Standard),以便于用户的使用和用户对系统的维护,而且linux是一个基于文件的系统,在linux中任何东西都是一个文件,比如硬盘,分区,网卡,显卡,都可以看作一个文件,所以了解linux的系统目录结构和目录下的文件作用极其重要。
根据FHS标准linux的主要目录结构如下:
/bin:执行不一定需要root权限的命令
/boot:放置开机会使用到的文件
/dev:设备和设备接口文件
/etc:系统主要的配置文件
/home:用户主目录
/lib:系统开机的时候会用到的函数库,以及/bin,/sbin目录下命令会调用的函数库
/media:放置可删除的设备文件
/mnt:暂时挂载文件系统的挂载点
/opt:第三方软件的放置目录
/root:root用户的主文件夹
/sbin:开机过程所需要的命令,包括开机,修复,还原系统所需命令,需要使用root权限
执行
/srv:网络服务启动后,这些服务所需要用到的数据目录
/tmp:正在执行的程序暂时存放文件的目录
/usr:操作系统软件资源,所有系统默认软件
/var:经常变动的文件存放目录,比如缓存文件,登录文件,以软件运行时产生的文件
/lost+found:ext2/ext3文件系统专有,存放文件系统发生错误时丢失的文件片段
/proc:虚拟文件系统,在内存中,存放的数据为系统的状态
/sys:虚拟文件系统,记录内核相关信息
/usr目录
/bin: 绝大多数用户可使用的命令
/include: C/C++等程序设计语言的头文件和包含文件,以及其他软件的头文件
/lib: 应用软件的函数库,目标文件,以及不被一般用户惯用的执行文件和脚本
/local: 系统管理员在本机自行安装自己下载的软件
/sbin: 非系统正常运行所需要的系统命令
/share: 共享文件放置目录
/src: 源代码存放目录
/var 目录下
/cache: 应用程序产生的缓存文件
/lib: 程序执行过程中,需要使用的文件
/lock: 设备或文件上锁文件
/log: 登录文件
/mail: 个人电子邮箱文件
/run: 某程序或服务启动后的pid
/spool:放置队列信息,即等待其他程序使用的数据