# Linux 系统目录层级结构说明

# Linux 系统各个目录作用说明

/
├── bin		// 存放二进制可执行文件目录
├── boot	// 系统启动核心目录
├── dev		// 存放设备文件目录
├── etc		// 存放主要配置文件目录
├── home	// 除了 root 用户以外的其他所有用户的默认家目录。如用户user01的家目录为/home/user01
├── lib		// 存放标准程序设计库的目录,又叫动态链接共享库目录。类似 Windows 系统的 dll 文件
├── lib64	
├── media	// 可移除设备
├── mnt		// 系统提供这个目录是让用户临时挂载其他的文件系统
├── opt		// 存放额外添加的软件目录
├── proc	// 虚拟目录,是系统内存的映射,可直接访问这个目录来获取系统信息
├── root	// 系统管理员 root 的家目录
├── run		// 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
├── sbin	// 系统管理命令,这里存放的是系统管理员使用的管理程序
├── srv		// 设备数据
├── sys		// 与/proc一样,存放系统运行过程中的信息文件
├── tmp		// 存放公用临时文件目录
├── usr		// 存放应用程序和文件目录
	├── bin			// 众多的应用程序
	├── etc
	├── games
	├── include		// Linux 系统下开发和编译应用程序所需要的头文件
	├── lib			// 常用的动态链接库和软件包的配置文件
	├── lib64
	├── libexec
	├── local
		├── bin
		├── etc
		├── games
		├── include
		├── lib
		├── lib64
		├── libexec
		├── sbin
		├── share
		├── src
	├── sbin		// 超级用户的一些管理程序
	├── share
	├── src			// 源代码,Linux 内核的源代码就放在 /usr/src/linux 里
	├── tmp
├── var		// var 是 variable(变量)的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

dir_struct

img

# Linux 系统中软件安装到哪里?

Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的。

/usr:系统级的目录,可以理解为 C:/Windows/

/usr/lib:系统库目录,可以理解为 C:/Windows/System32

/usr/local:用户级的程序目录,可以理解为 C:/Progrem Files/,用户自己编译的软件默认会安装到这个目录下。

/opt:用户级的程序目录,可以理解为 D:/Software,opt 有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接 rm -rf /opt 掉即可。在硬盘容量不够时,也可将 /opt 单独挂载到其他磁盘上使用。

源码放到哪里?

/usr/src:系统级的源码目录 /usr/local/src:用户级的源码目录

常用软件安装路径:

tomcat:/usr/local/tomcat

jdk:/usr/local/src/jdk1.8

nginx: /usr/local/nginx

redis:/usr/local/redis

mysql:/usr/local/mysql

php:/usr/local/php

maven:/usr/local/maven

node:/usr/local/node

yarn:/usr/local/yarn

参考资料:

宝塔面板中的文件备注

Linux 目录结构说明 (opens new window)

[ linux ] 文件系统和目录结构详解 (opens new window)

Linux 软件安装到 /usr,/usr/local/ 还是 /opt 目录? (opens new window)

Linux 系统目录结构 | 菜鸟教程 (opens new window)