Linux系统目录结构:
所有的类Unix系统根分区下的文件系统都基本一致。分别介绍一下功能:/bin:所有常用的可执行的二进制文件,就是“命令”,这些命令是所有用户都可以使用的。
(存放系统命令的目录,普通用户和超级用户都可以执行。不过放在/bin下的命令在单用户模式下也可以执行。)
/sbin:与bin文件夹类似,都是可执行的二进制文件文件,但是这些命令只有root用户才能使用。
(保存和系统环境设置相关的命令,只有超级用户可以使用这些命令进行系统环境设置,但是有些命令可以允许普通用户查看。)
/boot:引导目录,整个操作系统引导、启动所需要的东西都在里面。其中最重要的便是如下图的文件“vmlinuz-xxxxxxxxxxx”,这便是内核文件,其版本号也可以看到。在bash中输入uname -r
,得到的版本号与其完全一致。操作系统在启动的时候,第一个加载的就是内核,就是这个文件。( /boot :系统启动目录,保存系统启动相关的文件,如内核文件和启动引导程序(grub)文件等。)
/dev:“dev”是单词“device”的缩写,意为“设备”。顾名思义,这里面保存的就是我们的硬件设备。在Linux当中,所有的硬件设备都抽象为一个文件,存在此处。
/etc:所有的操作系统相关的配置文件几乎都是保存在这个目录下(并不是全部)。
(配置文件保存位置,系统内所有采用默认安装方式(rpm安装)的服务的配置文件全部保存在这个目录当中,如用户账户和密码,服务的启动脚本,常用服务的配置文件等)
/home:普通用户的家目录,每有一个用户,则有一个与用户名同名的文件夹。建立每个用户时,每个用户要有一个默认登录位置,这个位置就是这个用户的家目录,所有普通用户的家目录就是在/home下建立一个和用户名相同的目录,如用户user1的家目录就是/home/user1 。
/root:与上条相对应的是,root用户的家目录就是根分区下的root目录,它是单独的,文件夹图标上打叉,说明我们现在没有权限访问。
/lib:“library”的缩写,所有的库文件都保存在这里。(系统调用的函数库保存位置)
/lost+found :当程序意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。这个目录只在每个分区中出现,例如/lost+found就是根分区的备份恢复目录,/boot/lost+found就是/boot分区的备份恢复目录。
/media:挂载用,如果我们插入一个U盘或者光盘,就会挂载在这个地方。有些操作系统不一定有此文件夹。
(挂载目录,系统建议用来挂载媒体设备的,例如软盘和光盘)
/mnt:同media文件夹,都是挂载用的,但是这个文件夹是一定有的。(挂载目录,早期的Linux只有这一个挂载目录,并没有细分。现在这个目录系统建议挂载额外设备,如U盘,移动硬盘和其他的操作系统的分区。)
/opt:一般大型软件都安装在这个地方,不强制,约定俗成。
/proc:系统的实时信息,这个文件夹不存在硬盘上,存放在内存中,它是一个虚拟的文件系统。主要保存系统的内核,进程,外部设备状态和网络状态等。例如/proc/cpuinfo是保存CPU信息的,/proc/devices是保存设备驱动的列表的,/proc/filesystems是保存文件系统列表的,/proc/net 是保存网络协议信息的。我们可以使用命令行查看这些文件的信息,cd /proc/
进入proc文件夹下,ls -l
查看文件,发现几乎大部分文件的时间跟系统时间是相同的。/sys:是系统一些比较底层的信息,底层硬件的信息。
(虚拟文件系统。和/proc目录相类似,都是保存在内存当中的,主要是保存于内核相关信息的)
/src:服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据。
/tmp:临时目录,所有放在tmp目录下的信息都是临时的。tmp目录会自动删除,隔一段时间系统就会自动删除。
/usr:与“opt”相对应,一般的应用软件默认装在这个目
录下。系统软件资源目录。注意usr不是user的缩写,而是“Unix Software Resource”的缩写,所以不是保存用户的数据,而是存放系统软件资源的目录。系统中安装的软件大多数保存在这里。
/usr/bin :存放系统命令的目录,普通用户和超级用户都能执行。这些命令和系统启动无关,在单用户模式下无法执行。
/usr/sbin :存放根文件系统不必要的系统管理命令,例如多数服务程序。只有超级用户可以使用。
/var:保存的是一些经常变化的信息,类似于服务器信息,以及日志信息这样经常变化的信息,都保存在这个文件夹中。(动态数据保存位置。主要保存缓存、日志以及软件运行所产生的文件)