我的一台服务器需要运行 Easypanel ,于是就选择了 Rocky Linux 作为操作系统,查资料时发现这篇介绍 Rocky Linux 目录结构的文章,于是便转了过来,作为备忘吧,呵呵

大部分 Linux 系统的目录结构遵循 Linux 文件系统层次标准(Filesystem Hierarchy Standard,FHS),因此,大部分的 Linux 系统目录结构都差不多。

目录结构

  1. /(根目录)

这里是整个文件系统的起点,所有的目录和文件都在根目录之下组织起来。

  1. /bin(系统基本命令目录)

这里存放着系统启动和运行时用户和系统基本命令的二进制文件。例如,ls、cp、mv等常用命令都存放在这里。这些命令是所有用户都可以执行的。

  1. /sbin(系统管理命令目录)

这里存放着系统管理员使用的系统管理命令的二进制文件。例如,ifconfig、fdisk等命令。这些命令主要用于系统维护、网络配置等系统管理任务。

  1. /boot(系统引导目录)

这里存放系统启动相关的文件,如内核文件(vmlinuz)、引导加载程序(GRUB)。这个目录对于系统启动至关重要,如果这个目录中的文件损坏,系统可能无法正常启动。

  1. /dev(系统设备目录)

这里存放系统中的设备文件。例如,/dev/sda表示系统中的第一个硬盘设备。/dev/tty1表示第一个虚拟终端设备。/dev/pts表示ssh、telnet后登录的远程目录。/dev/null表示垃圾桶,所有指向null的输出都会被丢弃。/dev/cdrom表示光盘驱动器。/dev/input表示输入设备,如鼠标、键盘。设备文件是Linux系统与硬件设备交互的接口。

  1. /etc(配置文件目录)

这里存放系统的配置文件。几乎所有的系统服务和应用程序都会在这里有自己的配置文件。例如,/etc/passwd文件存储用户账户信息,/etc/ssh/sshd_config是SSH服务的配置文件。

  1. /home(用户目录)

这里是普通用户的主目录所在地。每个用户在/home下都有自己的一个子目录,例如用户user1的主目录为/home/user1,用户可以在自己的主目录下存放个人文件、配置文件等。

  1. /lib和/lib64(共享库目录)

这里存放系统运行时所需的共享库文件,分别区分32位和64位。例如,libc.so(C语言标准库)、libaio.so(异步I/O标准库)、libarchive.so(压缩/归档标准库)等库文件。许多程序在运行时需要调用这些库文件。

  1. /media(移动设备目录)

这里用于自动挂载可移动媒体设备,如U盘、移动硬盘等。当插入可移动设备时,系统通常会自动将其挂载到/media下的某个目录中。

  1. /mnt(临时挂载点目录)

这是一个临时挂载点目录。管理员可以手动将文件系统挂载到/mnt下的某个子目录,例如挂载网络文件系统(NFS)或者其他分区等。

  1. /opt(第三方软件目录)

这里存放第三方软件的安装目录。一些不是由系统默认软件包管理器安装的软件,可能会选择安装在/opt目录下。例如,某些商业软件或者大型开源软件可能会将自己安装在/opt下的一个单独目录中。

  1. /proc(进程目录)

这是一个虚拟文件系统,它提供了一种内核数据结构的接口。通过查看/proc下的文件和目录,可以获取系统运行时的信息,如进程信息(/proc/[pid],其中[pid]是进程的ID)、系统硬件信息(如/proc/cpuinfo显示CPU信息)等。

  1. /root(root目录)

这是系统管理员(root用户)的主目录,与普通用户的主目录类似,root用户可以在这里存放自己的文件和配置。

  1. /run(运行状态目录)

这里存放系统运行时产生的临时文件,如进程的PID文件等。这些文件在系统运行期间存在,系统关闭后会被清除。

  1. /srv(服务器数据目录)

这里存放服务器相关的数据。例如,对于一个Web服务器,网站的文件可能会存放在/srv/www(这只是一种可能的目录结构,具体取决于服务器的配置)。

  1. /sys(系统属性目录)

这里是一个虚拟文件系统,主要用于与内核交互,获取和设置内核相关的参数和设备信息。例如,可以通过/sys/class/net/eth0(假设eth0是网络接口)来查看和设置网络接口的一些参数。

  1. /tmp(临时数据目录)

这里存放临时文件。所有用户都可以在这个目录下创建和删除文件,但是系统可能会定期清理这个目录中的文件。

  1. /usr(命令、库、文档)

这里存放用户命令、库文件、文档等。

  • /usr/bin:存放了大多数用户命令的二进制文件,类似于/bin,这里的命令更多是与系统基本功能相对独立的用户命令。
  • /usr/sbin:存放系统管理员使用的系统管理命令,类似于/sbin,但这里的命令更多是与系统基本功能相对独立的系统管理命令。
  • /usr/lib和/usr/lib64:存放共享库文件,类似于/lib/lib64,但这里主要是与用户程序相关的库文件。
  • /usr/local:这是本地安装软件的默认目录。管理员在安装一些没有包含在系统软件包中的软件时,通常会安装到/usr/local下的相应目录中,如/usr/local/bin/usr/local/lib等。
  • /usr/share:存放共享数据,如文档、图标、帮助文件等。例如,/usr/share/doc下存放着各种软件包的文档。
  1. /var(变化数据的目录)

用于存放经常变化的数据,如日志文件、邮件队列等。

  • /var/log:存放系统和应用程序的日志文件。例如,/var/log/messages记录系统的一般消息,/var/log/secure记录安全相关的事件(如登录尝试等)。
  • /var/spool:用于存放各种队列数据,如邮件队列(/var/spool/mail)、打印队列等。

本文修改自:https://mp.weixin.qq.com/s/XBpxJwtSo7gSCIczy8Uhlg