linux系统目录结构:

img

箭头连线表示软链接:

image-20230908164041965

image-20230908164110747

目录解释:

/bin:

bin(Binaries二进制),存放最经常使用的命令。

image-20230908164610262

/boot:

存放启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件。

image-20230908165107457

/dev:

dev是设备Device的缩写,该目录下存放的是linux的外部设备,在linux中访问设备的方式与访问文件相同。

image-20230908165316731

/dev 目录包含了设备文件,用于与硬件设备和内核模块进行交互。这些文件通常以字符设备(char)和块设备(block)的形式存在。

根据你提供的信息,以下是一些 /dev 目录下的文件和文件夹的含义:

  • /dev/block/:块设备相关的文件夹,用于表示块设备,例如硬盘分区。

  • /dev/char/:字符设备相关的文件夹,用于表示字符设备,例如串口设备和虚拟终端。

  • /dev/console:控制台字符设备,通常用于系统启动时的控制台输出。

  • /dev/fb0:帧缓冲设备,用于图形显示的设备。

  • /dev/disk/:磁盘相关的文件夹,可能包含硬盘分区的符号链接。

    ......

/dev 目录中的设备文件用于与硬件和内核模块进行通信,允许用户和应用程序与系统的各种硬件资源进行交互。不同的设备文件代表不同类型的硬件或虚拟设备。

/etc:

etc是Etcetcera(等等)的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

image-20230908165528246

image-20230908165640149

/home:

用户的家目录,在linux中,每个用户都有一个自己的目录。

image-20230908165731231

/lib:

lib是Library(库)的缩写,这个目录里存放着系统最基本的动态连接共享库,作用类似于WINDOWS里的DLL文件,几乎所有的应用程序都需要用到这些共享库。

image-20230908165937377

/lib 目录通常包含共享的系统库文件(shared system library files)以及与系统和应用程序相关的其他库和插件。这些库文件对于操作系统和应用程序的正常运行非常重要。以下是一些常见的子目录和其内容的解释:

  • /lib/accountsservice/:包含用于管理用户账户和用户会话的库文件。

  • /lib/apparmor/:AppArmor(应用程序安全性框架)的相关文件和库,用于应用程序的安全性和访问控制。

  • /lib/apt/:Advanced Package Tool (APT) 的相关库文件,用于管理软件包。

  • /lib/bfd-plugins/:GNU Binutils的插件文件,用于二进制文件处理。

  • /lib/binfmt.d/:与二进制格式相关的配置文件目录。

  • /lib/chrony/:Chrony 时间同步工具的相关文件和库,用于系统时间同步。

这些目录和文件是操作系统的一部分,对于系统的正常运行和应用程序的功能至关重要。不同的目录和文件夹包含了不同用途的库和配置文件,以支持各种系统功能和应用程序的需求。

/lost+found;

一般情况下是空的,当系统非法关机后,就存放了一些文件。

/media:

linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。

image-20230908170555347

普通的SSH会话中,远程服务器只能访问和操作与SSH连接相关的内容和数据,而无法感知或识别本地主机上的硬件设备。

/mnt:

系统提供该目录是为了让用户临时挂载别的文件系统。

/opt:

opt是optional(可选)的缩写,这是给主机额外安装软件的目录。

image-20230908170851449

/opt/support...

/proc:

proc是Processes(进程)的缩写,/proc是一种伪文件系统,存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,可以通过直接访问这个目录来获取系统信息,

这个目录的内容不在硬盘上而是在内存里,可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,是别人无法ping你的机器:

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

image-20230908171331813

可以通过cd /proc/进程号,进入进程所运行的目录。

/root:

系统管理员目录。

/sbin:

s=Super User,是Superuser Binaries(超级用户的二进制文件)的缩写,存放的是系统管理员使用的系统管理程序。

image-20230911093913341

image-20230911093930539

/etc/selinux:

该目录为Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,该目录存放selinux相关的文件。

image-20230911094136854

/srv:

该目录存放一些服务启动之后需要提取的数据。

image-20230911095001666

/sys:

该目录下安装了2.6内核中新出现的一个文件系统sysfs,sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统时内核设备树的一个直观反映,当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

image-20230911100647365

/sys是一个虚拟文件系统,它提供了与内核和设备相关的信息和控制接口。这些子目录包含了不同的信息和控制接口,用于管理和监控系统的各个方面。

  1. block/:包含块设备相关的信息和控制接口,例如硬盘和分区。

  2. bus/:包含总线子系统相关的信息和控制接口,用于管理各种总线,如PCI、USB等。

  3. class/:包含设备类相关的信息和控制接口,用于管理和监控设备类别。

  4. dev/:包含设备节点和设备文件相关的信息和控制接口。

  5. devices/:包含设备管理的信息和控制接口,用于监控和管理已连接的设备。

  6. firmware/:包含固件相关的信息和控制接口。

  7. fs/:包含文件系统相关的信息和控制接口,例如挂载点和文件系统类型。

  8. hypervisor/:包含虚拟化相关的信息和控制接口,用于管理虚拟化环境。

  9. kernel/:包含内核相关的信息和控制接口,例如内核参数和调试信息。

  10. module/:包含内核模块相关的信息和控制接口,用于管理加载的内核模块。

  11. power/:包含电源管理相关的信息和控制接口,用于管理节能和电源状态。

这些子目录中的文件和目录提供了系统和内核的各种信息,同时也允许用户空间程序和工具与内核进行交互和配置系统。这些接口是Linux系统管理和监控的重要组成部分。

/tmp:

存放一些临时文件。

image-20230911100819356

/usr:

unix shared resources(共享资源)的缩写,用户的很多应用程序和文件都放在这个目录下。

image-20230911101004027

/usr/bin:

系统用户使用的应用程序。

/usr/sbin:

超级用户使用的比较高级的管理程序和系统守护程序。

/usr/src:

内核源代码默认的放置目录。

image-20230911101411219

/var:

variable(变量)的缩写,这个目录中存放着不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下,包括各种日志文件。

image-20230911101945676

/run:

在系统运行时用于存储各种临时数据的临时文件系统,对于系统性能和可维护性非常重要。它允许系统和应用程序在运行时创建和管理需要的临时文件和目录,而无需依赖于硬盘上的永久存储。

文章作者: Administrator
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 IKKO
喜欢就支持一下吧