共计 1782 个字符,预计需要花费 5 分钟才能阅读完成。
一、FHS 介绍
Filesystem Hierarchy Standard(文件系统层次化标准)的缩写,多数 Linux 版本采用这种文件组织形式,类似于 Windows 操作系统中 c 盘的文件目录,FHS 采用树形结构组织文件。FHS 定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
FHS 定义了两层规范,第一层是,/ 下面的各个目录应该要放什么文件数据,例如 /etc 应该要放置设置文件,/bin 与 /sbin 则应该要放置可执行文件等等。第二层则是针对 /usr 及 /var 这两个目录的子目录来定义。例如 /var/log 放置系统登录文件、/usr/share 放置共享数据等等。
二、linux 目录结构介绍
整个 Linux 系统最重要的地方就是在于目录树架构,所谓的目录树架构就是以根目录为主,然后向下呈现分支状的目录结构的一种档案架构。下图给出了 linux 的目录结构,那这些目录都有什么作用呢?
三、linux 目录的作用
- 根目录(/)
最高一级目录,所有目录都是根目录衍生出来,只有 root 用户具有写权限,一般根目录下只存放目录,不要存放件
- /bin 目录 – 用户二进制文件
包含二进制的可执行文件,你需要的常见的 Linux 命令都位于此目录下。
- /sbin 目录 – 系统二进制文件
这个目录下的命令通常由系统管理员使用,对系统进行维护。
- /etc– 配置文件
包含所有程序所需要的配置文件,也包含用于启动 / 停止单个程序的起动和关闭 shell 脚本。
- /dev- 设备文件
包含设备文件,包括终端设备、USB 或连接到系统的任何设备,如网卡等。
- /proc- 进程信息文件
这是一个虚拟的文件系统,包含有关正在运行的进程信息。
- /usr- 用户程序
包含二进制文件、库文件、文档和二级程序的源代码。
/usr/bin 中包含用户程序的二进制文件。如果你在 /bin 中找不到用户二进制文件,到 /usr/bin 目录看看。/usr/sbin 中包含系统管理员的二进制文件。如果你在 /sbin 中找不到系统二进制文件,到 /usr/sbin 目录看看。/usr/lib 中包含了 /usr/bin 和 /usr/sbin 用到的库。/usr/local 中包含了从源安装的用户程序。
- /home -HOME 目录
包含所有用户的个人档案,Linux 是多用户的系统,所以用该目录保存各用户的信息。
- /boot - 引导加载程序
包含引导加载程序相关的文件。
- /lib - 系统库
包含支持位于 /lib 和 /sbin 下的二进制文件的库文件。
- /opt - 可选的附加应用程序
给主机额外安装软件所摆放的目录,以前的 Linux 系统中,习惯放置在 /usr/local 目录下
- /mnt /media - 挂载目录
光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载。
- /root 管理员家目录
在这里我们所介绍的目录是在 linux 系统中常见的目录,不同厂商的 linux 有所差异,有的版本中会出现有额外作用的目录,这个就需要具体问题具体对待了。
四、目录和设备节点
我们已经知道目录是用来存放文件的,不同的目录存放的文件作用不同,那么我们来看下设备节点是什么?一个设备节点其实就是一个文件,Linux 中称为设备文件。有一点必要说明的是,在 Linux 中, 所有的设备访问都是通过文件的方式,一般的数据文件程序普通文件,设备节点称为设备文件 ,而这些设备节点,或者说是设备文件都统一存放在 /dev 目录下,简单来说,设备节点是一种特殊的文件,只不过这个文件存放的不是一般的数据,而是和你计算机中的设备相关联的。
五、. 和…
在 linux 系统中,使用 ls - a 命令时,你会发现每一个目录下都包含两个目录,这两个目录就是. 和…,其中 ”.“表示是的是当前目录,也就是你使用 pwd 所查看到的路径,而”…” 表示的上一级目录,也就是父目录。
六、绝对路径和相对路径
linux 的路径书写方式有两种:
- 绝对路径:路径的写法一定是由根目录 / 写起的,以根目录为起点;
- 相对路径:路径的写法不是由根目录 / 写起的,不以根目录为起点。
例如,你知道你的朋友在四楼,而你在五楼,如果你的朋友询问你的位置,你就有两种回答方式:
- 绝对路径的方式就是你告诉对方你在 XX 小区的 xx 号楼的五楼,
- 相对路径的方式就是你告诉对方你在对方五楼。
至于优缺点方面没有绝对的答案,不同情况使用不同的路径罢了,两种路径的出现只是因为参照物不同而已。