Linux入门真经-012FHS文件系统层级结构
本节的内容对你了解Linux的文件系统至关重要。
我们之前介绍了:linux中的文件分多种:有二进制程序文件、库文件、配置文件、帮助文件等等。与此同时,linux发行版版本众多,如果没有一个统一的标准来规定文件的存放规则,那么我们系统中的文件将是一团乱麻,非常不利于管理和维护。
因此,FHS文件系统层级结构标准应运而生。他对每个特定目录下应该要存放什么样的文件(数据)做出了建议,各大发行版均遵循此标准,因此,我们去看各个发行版根目录的子文件夹,可以发现都是极为相似的。
FHS已经成为了一个约定俗成的规矩,因此为了自己及他人的方便,建议大家好好了解并践行FHS标准。
以下列出常见的目录及其作用,如果你对说明的内容不是特别理解,没关系,可以先记忆一下,因为我们现在所学的东西还是太少了,过一段时间你就会彻底理解其含义:
/bin:存放所有用户可用的基本命令程序文件;(单用户模式下也能使用,什么是单用户模式以后会讲)
/sbin:供系统管理使用的工具程序;(系统管理员所能使用的命令)
/boot:引导加载器必须用到的各静态文件(开机引导所需要的文件);
/dev:存储特殊文件或设备文件;
设备有两种类型:字符设备(线性设备:鼠标键盘等)、块设备(随机设备:硬盘等);
/etc:系统程序的配置文件;
/home:普通用户的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;
/root:管理员的家目录;可选;
/lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块
/lib64:64位系统特有的存放64位共享库的路径;
/media:便携式设备挂载点,cdrom,floppy等;
/mnt:其它文件系统的临时挂载点;
/opt:第三方应用程序的安装位置;可选路径;
/srv:当前主机为服务提供的数据;
/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录,任何人都能访问;可供所用户执行写入操作;有特殊权限(STICKY);
/usr:usrHierarchy,存放全局共享的只读数据;
/usr/local:Localhierarchy,管理员安装的非发行版默认提供的软件
/var:/varHierarchy,存储常发生变化的数据的目录;如:
/var/cache:Applicationcache data(应用缓存)
/var/lib:程序在执行过程中所需的数据文件的存放目录
/var/log:日志文件目录,非常常用
/var/spool:队列数据(如邮件等)
/proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数。系统调优常和其中的文件打交道;
这些常用目录我们需要记住,因为我们会经常和其中的文件打交道,当你需要去修改或者查看这些文件时,我们总得知道他们在哪里,总不能每次都在系统里全局查找一下吧。
下一节我们会介绍一些目录管理类的命令