Linux操作系统知识——文件系统结构

342 阅读4分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

综述

Linux的文件系统与Windows有很大不同,后者是以驱动器盘符为基础,而Linux只有一个文件树。文件系统以一个树根/为起点,即:根目录。存储的所有的文件、外设都是以文件的形式挂载到文件树的。

各种Linux版本的根目录结构大致如下: /bin /boot /dev /etc /home /lib /media /mnt opt /proc /root /sbin /srv /sys /tmp /usr /var

图示为Kali系统的根目录结构: 在这里插入图片描述

一、/bin和/sbin

名称来源于binarysuperuser binary使用和维护Linux系统的大部分基本程序都位于这两个目录下,这些可执行程序都是二进制文件(binary files)

/bin目录用来存放最常用的基本程序,如:Shells、文件操作实用程序等,包含各种基本终端指令

/sbin目录用来存放基本的系统和系统维护程序,如:fsck、shutdown等

二者区别在于/sbin内的可执行程序只能由管理员(root)执行

二、/boot

该目录存放着与系统启动有关的各种文件,包括系统引导程序以及系统的核心部分、连接文件、镜像文件

三、/dev

名称来源于device,该目录存放各种外部设备的镜像文件。操作里面的文件就等同于操作对应的外设。

例如:系统的第一个硬盘是hda,第一个硬盘的第一个分区是hda1等

四、/etc

该目录存放程序所需的整个文件系统的配置文件,供所有用户查看,但是仅能由管理员(root)修改

例如:hosts文件、passwd文件等

五、/home

该目录存放所有一般用户的主目录,按照用户名命名存放。用户主目录包括桌面(Desktop)、下载(Downloads)等与用户个人有关的子目录

六、/lib

名称来源于library,该目录存放与开机有关的及与/bin内程序有关的函式库,或者说是存放着系统最基本的动态连接共享库,类似于Windows的DLL文件

七、/media

该目录存放自动挂载的已识别设备,包括但不限于光盘、DVD等

早期版本中不存在这个目录,而是统归为/mnt目录

八、/mnt

名称来源于mount,该目录存放暂时挂载的设备,按照设备名称命名存放,包括但不限于硬盘、U盘等

使用WSL(Windows Subsystem for Linux)技术实现Windows+Linux单系统时,物理机的所有硬盘分区均挂载到/mnt目录 在这里插入图片描述

九、/opt

名称来源于optional,该目录存放额外第三方可选软件及软件包,是用户级的程序目录,相当于Windows的D:/Software

十、/proc

名称来源于processes,该目录存放当前系统中运行的进程的虚拟镜像,按照进程号命名存放。存储的文件当前内核运行状态的一系列特殊文件,是系统内存的映射,可以通过直接访问来获取系统信息,目录下的内容是在内存里的

十一、/root

该目录是系统管理员(root)的主目录

十二、/srv

名称来源于services,该目录存放本机或本服务器提供的服务或数据,按照服务名命名存放

例如:tftp等

十三、/sys

该目录存放 2.6 内核中新出现的一个文件系统 sysfs,可以用来直观反映内核设备树

十四、/tmp

名称来源于temporary,该目录存放临时文件、完毕后可随时销毁的缓存文件,任何用户均能访问,系统会定期清理

十五、/usr

名称来源于unix shared resources,即共享资源,该目录存放用户的很多应用程序和文件,是系统级的目录,相当于C:/Windows/

目录/usr/lib可以理解为C:/Windows/System32/

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

目录/usr/src是系统级的源码目录,存放内核源代码,而目录/usr/local/src则是用户级的源码目录

十六、/var

名称来源于variable,该目录存放系统产生的不可自动销毁的缓存文件、日志记录,包括数据库文件、日志文件等,只能由用户手动清理

欢迎在评论区留言 感谢浏览