天天看点

【Linux 系统】Linux 目录结构

Filesystem Hierarchy Standard(文件系统层次化标准)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。

FHS定义了两层规范,

第一层是, / 下面的各个目录应该要放什么文件数据,例如/etc应该要放置设置文件,/bin与/sbin则应该要放置可执行文件等等。

第二层则是针对/usr及/var这两个目录的子目录来定义。例如/var/log放置系统登录文件、/usr/share放置共享数据等等。

整个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中包含了从源安装的用户程序。

/usr/src 内核源代码默认的放置目录。

/home -HOME目录

包含所有用户的个人档案,Linux是多用户的系统,所以用该目录保存各用户的信息。

/boot -引导加载程序

包含引导加载程序相关的文件。

/lib -系统库

包含支持位于/lib和/sbin下的二进制文件的库文件。

/opt -可选的附加应用程序

给主机额外安装软件所摆放的目录,以前的 Linux 系统中,习惯放置在 /usr/local 目录下

/mnt /media -挂载目录

光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载。

/root 管理员家目录

/tmp 临时文件目录

程序运行时产生的临时文件存放目录

/lost+found

在EXT3系统中,当系统意外崩溃或意外关机时,会产生一些碎片文件在这个目录下面,系统启动时fcsk工具会检查这个目录,并修复已损坏的文件系统

/var 存放内容常变动的文件目录

/sys

这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs

sysfs文件系统集成了下面3种文件系统的信息:

针对进程信息的proc文件系统、

针对设备的devfs文件系统

针对伪终端的devpts文件系统。

该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中

/run 临时文件系统,存储系统启动以来的信息

当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run

/srv 存放服务启动后需要提取的数据(不用服务器就是空)

/dev目录

一个设备节点其实就是一个文件,Linux中称为设备文件。

在Linux中,所有的设备访问都是通过文件的方式,一般的数据文件程序普通文件,设备节点称为设备文件,而这些设备节点,或者说是设备文件都统一存放在/dev目录下,简单来说,设备节点是一种特殊的文件,只不过这个文件存放的不是一般的数据,而是和你计算机中的设备相关联的。

在Linux文件系统中有两个特殊的目录,一个用户所在的工作目录,也叫当前目录,可以使用一个点 . 来表示;另一个是当前目录的上一级目录,也叫父目录,可以使用两个点 .. 来表示。

. :代表当前的目录,也可以使用 ./ 来表示;

.. :代表上一层目录,也可以 ../ 来代表。

如果一个目录或文件名以一个点 . 开始,表示这个目录或文件是一个隐藏目录或文件(如:.bashrc)。即以默认方式查找时,不显示该目录或文件

linux的路径书写方式有两种:

绝对路径:路径的写法一定是由根目录 / 写起的,以根目录为起点;

相对路径:路径的写法不是由根目录 / 写起的,不以根目录为起点。

至于优缺点方面没有绝对的答案,不同情况使用不同的路径罢了,两种路径的出现只是因为参照物不同而已

CentOS 7 后使用systemd 管理

继续阅读