主题
Linux根目录
Linux的目录树结构
我们前面有谈过Linux内的所有数据都是以文件的形态来呈现的,所以啰,整个Linux系统最重要的地方就是在于目录树架构。
所谓的目录树架构(directory tree)就是以根目录为主,然后向下呈现分支状的目录结构的一种文件架构。 所以,整个目录树架构最重要的就是那个根目录(root directory),这个根目录的表示方法为一条斜线“/”, 所有的文件都与目录树有关。

如上图所示,所有的文件都是由根目录(/)衍生来的,而次目录之下还能够有其他的数据存在。上图中长方形为目录, 波浪形则为文件。那当我们想要取得mydata那个文件时,系统就得由根目录开始找,然后找到home接下来找到dmtsai, 最终的文件名为:/home/dmtsai/mydata的意思。
| 目录名称 | 功能与作用描述 |
|---|---|
| /bin | 二进制应用程序目录,其中包含二进制文件 CentOS 系统所有用户使用的命令都在这个目录下。 |
| /boot | 开机启动引导目录,启动 (boot) 配置文件,其中包括了 Linux 内核文件与开机所需要的文件。 |
| /dev | 设备目录,设备 (device) 相关的文件和目录,其中包含了所有应用程序的配置文件,还包含了启动 / 停止某个程序的 shell 脚本。 |
| /etc | 配置文件目录,配置文件、启动脚本等文件。 |
| /home | 本地用户目录,所有不同权限的系统用户可在 home 目录分配存储个人用户的文件和资料。 |
| /lib | 系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。 |
| /lib64 | 存储64位库文件,而/lib主要存储32位库文件 |
| /media | 挂载可移动介质 (media),诸如 CD、数码相机,软盘,光盘等,可移除设备挂载目录。 |
| /mnt | 挂载 (mounted) 文件系统,临时安装目录,系统的管理员可拥有挂载文件系统的权限。 |
| /opt | 第三方软件安装目录,第三方应用程序一般放在此目录下,但实际中通常习惯放在 /usr/local 目录下。 |
| /proc | 特殊的动态信息目录,此目录的数据都在内存中,如系统核心,外部设备,网络状态,用以维护系统信息和状态,包括当前运行中进程 (processes) 信息。 |
| /root | root 用户主文件夹,读作 “slash-root” ,其他用户均放置在 /home 目录下 |
| /run | 系统运行的时候所需的文件,以前在 /var/run 中,后来拆分成独立的 /run 目录,重启后重新生成对应的目录数据。 |
| /sbin | 重要的系统二进制 (system binaries) 文件,也是包含的二进制可执行文件。在这个目录下的 linux 命令通常都是由系统管理员使用的,对系统进行维护。 |
| /srv | 服务启动后需要访问的数据目录。 |
| /sys | 系统 (system) 文件,跟 proc 一样虚拟文件系统,记录核心系统硬件信息。 |
| /tmp | 临时文件目录,存放临时文件目录,所有用户对该目录均可读写。 |
| /usr | 应用程序放置目录,包含绝大部分所有用户 (users) 都能访问的应用程序和文件。 |
| /var | 经常变化的 (variable) 文件,存放系统执行过程经常改变的文件,代表变量文件。在这个目录下可以找到内容可能增长的文件。 |
*文件系统与目录树的关系(挂载)
所谓的“挂载”就是利用一个目录当成进入点,将磁盘分区的数据放置在该目录下; 也就是说,进入该目录就可以读取该分区的意思。这个动作我们称为“挂载”,那个进入点的目录我们称为“挂载点”。
由于整个Linux系统最重要的是根目录,因此根目录一定需要挂载到某个分区的。 至于其他的目录则可依使用者自己的需求来给予挂载到不同的分区。我们以下图来作为一个说明:

图2.2.10、目录树与分区之间的相关性
上图中假设我的硬盘分为两个分区,partition 1是挂载到根目录,至于partition 2则是挂载到/home这个目录。 这也就是说,当我的数据放置在/home内的各次目录时,数据是放置到partition 2的,如果不是放在/home下面的目录, 那么数据就会被放置到partition 1了!