Linux 目录结构和重要文件路径说明
简介:本文对 Linux 文件系统/目录结构、一些关键文件、它们的可用性及其位置进行了细分。
您一定听说过,在 UNIX 和 UNIX 衍生系统(如 Linux)中,一切都被视为文件。如果不是文件,那么它一定是正在运行的进程。
Linux 中的文件主要有三类。
- 普通文件– 这些是由二进制或 ASCII 数据组成的普通文件。这些是常规文件,例如文档、图像、音频和视频文件等。
- 目录文件– 在 Linux 中,目录也被归类为文件,因为它们也可用作其他文件和文件夹的存储空间。
- 设备文件– 这些特殊文件为设备驱动程序提供接口,从而实现系统上硬件设备的可用性,例如鼠标、键盘、USB 设备、硬盘驱动器等。这些文件位于/dev目录中。
Linux目录结构图
标准Linux发行版遵循如下所示的目录结构,并附有图表和说明。
上述每个目录(首先是一个文件)都包含启动设备驱动程序、配置文件等所需的重要信息。我们按层次结构开始简要描述每个目录的用途。
/ 目录
根目录用一个正斜杠 表示(/)
,是 Linux 目录结构中最上面的目录。它包含 Linux 系统上的所有目录、子目录和文件。它从 Linux 目录层次结构的起始根目录开始。
注意:不要将根目录(/)
与根主目录混淆(/root)
。
/boot 目录
这是 Linux 系统中最重要的目录之一。顾名思义,启动目录包含Linux 启动文件,例如引导加载程序、内核及其相关文件。诸如“ vmlinuz ”之类的文件表示 Linux 内核的压缩映像。
/etc 目录
/etc目录包含已安装的所有服务、脚本和第三方应用程序的系统配置文件。此目录被视为 Linux 系统的神经中枢。
/home 目录
/home目录是包含用户个人文件夹和文件的目录。在图形化 Linux 系统中,主目录默认包含桌面、文档、下载、图片、视频和公共等文件夹。
此外,/home目录还包含以点为前缀的个人配置文件(.)
。这些是隐藏文件,包含登录 shell 会话的用户特定设置。
/根目录
/root目录是root用户的主目录,也称为root用户的主目录(而不是根目录(/)
)。
root 帐户也称为超级用户、管理用户、系统管理员或仅仅是 root 用户,他们拥有 Linux 中所有命令和系统文件的访问权限。
/opt 目录
/opt目录是为系统官方存储库中默认未包含的附加包和第三方软件应用程序保留的目录。
例如,当您安装Skype、Discord、Spotify和Java等应用程序时,它们就会存储在/opt目录中。
/dev 目录
/dev目录包含设备文件或连接到系统的设备(如硬盘、键盘和鼠标)的特殊文件。如上所述,这些文件不是用户可以读写的常规文件。
这些是标准设备的抽象,系统上的应用程序通过输入和输出系统调用与之交互。
/var 目录
/var目录存储系统生成的变量文件,其中包括日志文件、缓存和假脱机文件等等。
/bin 目录
/bin目录包含用户二进制文件、可执行程序以及系统中所有用户使用的常用系统命令。这些命令包括ls、pwd、cat、mkdir、cd、mv、cp、du、df、tar、rpm、wc、history等。
/sbin 目录
/sbin目录包含为 root 用户或具有 root 权限的用户保留的可执行文件、实用程序和系统命令。这些命令包括 halt、reboot、mkfs、fsck、fdisk、halt、iptables、ifconfig、ip、swapon等。
/usr 目录
/usr目录是最重要的目录之一,因为它保存了大量数据。该目录包含系统范围的只读文件。这些文件包括库、用户二进制文件及其文档、程序和系统实用程序。
/proc 目录
/proc 目录有点奇怪。它是一个虚拟或伪文件系统,包含有关正在运行的进程的重要信息。它被认为是 Linux 内核的控制和信息中心。
文件系统在系统启动时动态创建,并在系统关闭后被销毁。
/mnt 目录
/mnt目录及其子目录旨在用作安装存储设备(例如硬盘驱动器、USB 驱动器和 CDROM)的临时挂载点。
/sys 目录
/ sys是一个虚拟文件系统,包含一组为 Linux 内核提供接口的虚拟文件。
/media 目录
/media目录是系统挂载可移动媒体(例如 USB 驱动器)的目录。
/run 目录
/run目录是一个临时文件系统,其中包含易失性运行时数据,这些数据显示了系统自启动以来的状态。在启动过程开始时,必须删除(根据需要移除或截断) /run目录下的文件。
/tmp 目录
/tmp目录是存储临时文件的目录,许多程序使用此目录来创建锁文件并保存数据的临时存储。
不要删除 /tmp 目录下的文件,除非您确切知道自己在做什么!这些文件中的许多文件对于当前正在运行的程序至关重要,删除它们可能会导致系统崩溃。
/lib 目录
/lib目录存储了/bin目录中用户二进制文件所需的所有基本标准库。
/lost+found 目录
lost+found目录是在 Linux 安装过程中安装的,对于恢复由于意外关机而损坏的文件很有用。
/srv 目录
/srv目录是服务目录,缩写为 ' srv '。此目录包含特定于服务器和服务相关的文件。
探索重要文件、其位置及其可用性
Linux是一个复杂的系统,与Windows不同,它需要更复杂、更高效的方式来启动、停止、维护和重启系统。Linux中的每个进程都有定义明确的配置文件、二进制文件、手册页、信息文件等。
除了主要目录之外,这里还列出了一些重要的文件和目录及其用途。
- /boot/vmlinuz:Linux 内核文件。
- /dev/hda:第一个IDE HDD(硬盘驱动器)的设备文件。
- /dev/hdc :一般为IDE Cdrom的设备文件。
- /dev/sda:第一个 SATA 驱动器(硬盘驱动器)的设备文件。
- /dev/null:不存在的伪设备。有时垃圾输出被重定向到/dev/null,因此它会永远丢失。
- /etc/bashrc:此文件包含系统范围的默认值、功能和别名以及所有系统用户使用的其它文件。
- /etc/crontab:这是一个系统范围的文件,具有独特的格式,用于在 Linux系统上安排或自动执行系统任务。
- /etc/exports:确定哪些文件系统要导出到远程主机并指定选项的文件。
- /etc/fstab:这是一个特殊文件,包含有关所有可用挂载点和挂载点选项的信息。此文件中的每一行提供六个选项,每个选项表示有关挂载点或文件系统的信息。
- /etc/hosts:这是将系统主机名映射到其对应 IP 地址的配置文件。
- /etc/hosts.allow:该文件指定哪些主机被允许连接到本地系统。
- /etc/host.deny:该文件指定哪些主机被拒绝访问和在本地机器上提供服务。
- /etc/issue:包含登录前消息。
- /etc/modules:此文件包含在启动时应加载的内核模块的名称,每行一个。
- /etc/motd:motd代表每日消息,即用户登录时收到的消息。
- /etc/mtab:一个只读文件,包含当前已安装的文件系统的列表。
- /etc/passwd :包含系统用户信息(如用户名、UID、GID 和登录 shell 等)的文件
- /etc/printcap:包含由 /etc/cups/printers.conf 文件生成的打印机信息。
- /etc/profile:包含 Linux 系统范围的环境和其他启动脚本。
- /etc/profile.d :应用程序脚本,登录后执行。
- /etc/rc.d:有关运行级别特定脚本的信息。
- /etc/rc.d/init.d:运行级别初始化脚本。
- /etc/resolv.conf:这是一个 DNS 解析器文件。它指定系统如何利用 DNS 来解析主机名。
- /etc/security:包含各种 PAM 模块的配置文件。
- /etc/skel:此目录包含一组用户配置文件,这些文件在创建用户时会被复制到用户的主目录中。
- /etc/X11:这是包含 X-window 系统配置文件的目录。
- /usr/bin:普通用户可执行命令。
- /usr/bin/X11:此目录包含 X Windows 系统的无限嵌套目录和二进制文件。
- /usr/include:该目录包含 C 编译器的头文件。其中包括 stdio.h、stdlib.h 和 string.h 等。
- /usr/share : man 文件、信息文件等的共享目录。
- /usr/lib:此目录包含目标文件和目录
- /usr/sbin:该目录包含具有超级用户权限或用于系统管理的二进制文件。
- /proc/cpuinfo:该文件包含系统信息,包括 CPU 型号、型号名称、核心数、时钟速度等。
- /proc/interrupts:有关当前正在使用的中断的信息。
- /proc/ioports:该文件包含服务器上设备使用的所有输入/输出地址。
- /proc/meminfo:存储内存使用信息(包括交换信息)的文件。
- /proc/modules:列出内核正在使用的所有模块的文件
- /proc/mount:该文件包含详细的已挂载文件系统信息。
- /proc/stat:该文件包含有关系统和内核活动的详细信息。
- /proc/swaps:该文件包含有关交换文件的信息。
- /proc/version:该文件包含Linux版本信息。
- /var/log/lastlog:包含有关上次成功用户登录的信息的二进制文件。
- /var/log/messages :该文件包含启动时由syslog守护进程生成的消息日志。
- /var/log/syslog:包含非关键系统日志的文件。
- /var/log/wtmp :列出当前系统上每个用户的登录时间和持续时间的文件。
现在就这些了。请继续关注Example ,了解与Linux和Foss世界相关的任何新闻和帖子。保持健康,别忘了在评论部分提供您宝贵的意见。