首先,在Linux系统的根目录下,存在下图中显示的目录。
接下来将对这些目录进行介绍。
1. 一级目录介绍
目录名 | 目录的作用 |
---|---|
/bin/ | 存放系统命令的目录,普通用户和超级用户都可以执行。是/usr/bin/目录的软链接 |
/sbin/ | 存放系统命令的目录,只有超级用户才可以执行。是/usr/sbin/目录的软链接 |
/usr/bin/ | 存放系统命令的目录,普通用户和超级用户都可以执行 |
/usr/sbin | 存放系统命令的目录,只有超级用户才可以执行 |
/bin/
和/usr/bin/
的区别不大,在Redhat7开始,就只存在/usr/bin/
目录了。/sbin/
也是如此。- 其中
/bin/
中的bin全称是binary,即文件内存放二进制命令。 /sbin/
中的sbin即super binary,即文件内存放超级用户才能执行的二进制命令。
目录名 | 目录的作用 |
---|---|
/boot/ | 系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等 |
- 此目录内的文件全部是系统启动所必备的文件,如果误删,系统将会无法启动。
目录名 | 目录的作用 |
---|---|
/dev/ | 设备文件保存位置 |
- 在Linux系统中,颜色没有特殊的含义,但越鲜艳的颜色,代表这个文件越重要。
目录名 | 目录的作用 |
---|---|
/etc/ | 配置文件保存位置。系统内采用默认安装方式(rpm安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等 |
/home/ | 普通用户的家目录。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的家目录,所有普通用户的宿主目录是在/home/下建立一个和用户名相同的目录。如用户user1的家目录就是/home/user1/ |
-
如果使用普通用户登录,可以用/home/目录来做实验。
-
/etc/目录的内容如下图所示。由于文件太多,只截取部分文件。
-
Linux用户在登录时会有一个默认登录位置,这个默认登录位置就是家目录。如果是普通用户,如user1,那么user1用户登录时,他的默认登录位置就是/home/user1/。如果是超级用户,即root用户,那么root用户登录时,他的默认登录位置是/root/,即/root/就是root用户的家目录。
目录名 | 目录的作用 |
---|---|
/lib/ | 系统调用的函数库保存位置。是/usr/lib/的软链接 |
/lib64/ | 64位函数库保存位置。是/usr/lib64的软链接 |
目录名 | 目录的作用 |
---|---|
/lost+found/ | 当系统意外崩溃或机器意外关机,产生的一些文件碎片会放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。这个目录只在每个分区中出现,例如/lost+found/就是根分区的备份恢复目录,/boot/lost+found/就是/boot/分区的备份恢复目录。 |
目录名 | 目录的作用 |
---|---|
/media/ | 挂载目录。系统建议是用来挂载媒体设备的,如软盘和光盘。 |
/misc/ | 挂载目录。系统建议用来挂载NFS服务的共享目录,即网络存储设备。 |
/mnt/ | 挂载目录。早起Linux中只有这一个挂载目录,并没有细分。现在系统建议这个目录用来挂载额外的设备,如U盘、移动硬盘和其他操作系统的分区 |
- 上述三个目录都是挂载目录,我们也都知道,Linux系统中的挂载点要求是一个已经建立的空目录。那么系统虽然准备了三个默认挂载目录/media/、/misc/、/mnt/,但是到底在哪个目录中挂载什么设备都可以由管理员自己决定。例如/mnt/cdromo/挂载光盘,/mnt/usb/挂载U盘,这都是可以的。因为/media/和/misc/是Redhat6以后才出现的,之前只有/mnt/目录,所以绝大多数工程师基本都不会用/media/和/misc/目录。
目录名 | 目录的作用 |
---|---|
/opt/ | 第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。 |
- 因为/opt/目录也是Redhat6才出现的,所以根据以往的习惯,也可以把软件放到/usr/local/目录中,也就是说,/usr/local/目录也可以用来安装软件。
- 实际在工作中,绝大多数工程师也是把软件安装到/usr/local/目录中。
目录名 | 目录的作用 |
---|---|
/proc/ | 虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态等。如/proc/cpuinfo/是保存CPU信息的,/proc/devices/是保存设备驱动的列表的,/proc/filesystems/是保存文件系统列表的,/proc/net/是保存网络协议信息的 |
/sys/ | 虚拟文件系统。和/proc/目录相似,该目录中的数据都保存在内存中,主要保存与内核相关的信息 |
- 以上这两个目录都不要修改,这些目录是内存的挂载点,存放的是内存数据。
目录名 | 目录的作用 |
---|---|
/root/ | root的宿主目录。普通用户宿主目录在/home/下,root宿主目录直接在根目录下 |
/selinux/ | Linux增强安全组件的保存位置。用来限制root的权限 |
/tmp/ | 临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。 |
/srv/ | 服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据 |
- 可以使用/root/目录来做实验。
- 建议/tmp/目录中不要保存重要数据。可以使用/tmp/目录来做一些实验。
- /srv/目录里的内容不要修改。
目录名 | 目录的作用 |
---|---|
/usr/ | 系统软件资源目录。注意usr不是user的缩写,而是“UNIX Software Resource”的缩写,所以不是存放用户数据的目录,而是存放系统软件资源的目录。系统中安装的软件大多数保存在这里 |
/var/ | 动态数据保存位置。主要保存缓存、、日志以及软件运行所产生的文件 |
2. 二级目录介绍
目录名 | 目录的作用 |
---|---|
/usr/lib/ | 应用程序调用的函数库保存位置 |
/usr/local/ | 手工安装的软件保存位置。我们一般建议源码包软件安装在这个位置 |
/usr/share/ | 应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录 |
/usr/src/ | 源码包保存位置。我们手工下载的源码包和内核源码包都可以保存到这里。建议把手工下载的源码包保存到/usr/local/src/目录汇总,把内核源码保存到/usr/src/kernels/目录中。也就是说在/usr/src/中只保存内核源码。 |
/usr/src/kernels/ | 内核源码保存位置。 |
目录名 | 目录的作用 |
---|---|
/var/www/html/ | RPM包安装的Apache的网页主目录 |
/var/lib/ | 程序运行中需要调用或改变的数据保存位置。如MySQL的数据库保存在/var/lib/mysql/目录中 |
/var/log/ | 系统日志保存位置 |
var/run/ | 一些服务和程序运行后,他们的PID(进程ID)保存位置。是/run/目录的软链接 |
/var/spool/ | 放置队列数据的目录。就是排队等待其他程序使用的数据,比如邮件队列和打印队列 |
/var/spool/mail/ | 新收到的邮件队列保存位置。系统新收到的邮件会保存在此目录中 |
/var/spool/cron/ | 系统的定时任务队列保存位置。系统的计划任务会保存在这里 |