一、基本介绍
Linux 是一切皆文件,将所用的东西当做文件处理
目录结构就是一个单一的树状结构
整个的目录树只有一个树根:/ 根目录
文件夹分门别类的放到根目录下面,看起来就是根目录文件夹的类别了,每个树枝对应一个文件夹
树枝还可以分支(也就是层层嵌套,形成层级式目录结构)
每个文件一级一级的往上返,都会追随到根目录
Linux 路径是用正斜杠划分的(Windows 系统中是反斜杠,但是我们底层时通常用反斜杠进行转义字符的表示,Windows 中的路径转译教麻烦,Linux 直接使用正斜杠
Linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
深刻理解 linux 树状文件目录是非常重要的, 记住一句经典的话:在 Linux 世界里,一切皆文件。
上面的文件在 Linux 中就是下图的样子
我们仔细看下图中有一个小小的波浪线,这个波浪线就代表着用户的主录目(如果后面是#就代表着 root 用户的主目录)
我们也可以解释一下下面,root 表示我们当前是 root 用户,njf 是我们创建当前及其的时候给的主机名, ~ 代表所在的位置,#或/号代表着输入命令的提示符号,root 用户是#,普通用户是$
格式:
[登录用户名@主机名 当前所在目录]#或者$
二、目录结构的具体介绍
/bin【重要】
是 Binary(二进制)的缩写,这个目录存放着最经常使用的命令
我们发现 bin 目录和其他的三个目录都和其他的不太一下,右下角有一个箭头
这个箭头代表着这个文件夹不是直接放在当前的根目录下面的 ,而是以链接的形式,实际指向的是/usr/bin,也就是说/usr/bin 文件下的内容和下面文件夹下的 bin 的内容是一模一样的
/sbin【重要】
s 就是 Super User 的意思,这里存放的是系统管理员使用的系统管理程序
/home【重要】
存放普通用户的主目录,在 Linux 中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。不会有 root 管理员用户的文件夹
/root【重要】
该目录为系统管理员,也称作超级权限者的用户主目录
/usr【重要】
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录
/usr/local 【重要】
这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序
/etc【重要】
所有的系统管理所需要的配置文件和子目录
/boot【重要】
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里
/opt【重要】
这是给主机额外安装软件所摆放的目录。比如你安装一个 mysql 数据库则就可以放到这个目录下。默认是空的
/lost+found
当系统非法关机后,这里就存放了一些文件这个目录一般情况下是空的
/proc
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息
/srv
service 缩写,该目录存放一些服务启动之后需要提取的数据
/sys
这是 linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs
/tmp
这个目录是用来存放一些临时文件的
/dev
类似于 windows 的设备管理器,把所有的硬件用文件的形式存储
/media(CentOS6)
linux 系统会自动识别一些设备,例如 U 盘、光驱等等,当识别后 linux 会把识别的设备挂载到这个目录下 CentOS7 迁移到 /run/media
/mnt
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。
/var
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
/lib
统开机所需要最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库
/lab64
64 位相关的比较特殊的一些文件
/selinux [security-enhanced linux]
SELinux 是一种安全子系统,它能控制程序只能访问特定文件
三、挂载点
Linux 是树型目录结构,与 windows 的 C,D,E 盘完全不同,Linux 只有一个根目录’/',其余各个目录都是基于这个根目录发散,就是树形结构。
因此 Linux 分区跟 Windows 的 C,D,E 盘分区完全不同,而是将某个分区挂到一个对应的目录上,例如/home 对应一块分区,home 目录就是这块分区的挂载点、/boot 对应一块分区,boot
目录就是这块分区的挂载点、/usr 对应一块分区,usr 目录就是这块分区的挂载点。你可以形象的理解:一棵大树(根目录/)有很多树枝(目录,挂载点),每个树枝上都挂着一个箱子(分区,存储空间)。
挂载指的是在 linux 系统中,磁盘分区后,需要将其挂载到其它目录下,才可以进行访问
将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件
如果不挂载,通过 Linux 系统中的图形界面系统可以查看找到硬件设备,但命令行方式无法找到。
总之,Linux 系统使用任何硬件设备,都必须将设备文件与已有目录文件进行挂载
四、总结
- linux 的目录中有且只要一个根目录 /
- linux 的各个目录存放的内容是规划好,不用乱放文件。
- linux 是以文件的形式管理我们的设备,因此 linux 系统,一切皆为文件。
- linux 的各个文件目录下存放什么内容,大家必须有一个认识。