①Rocky Linux 9.6 根目录结构说明

本文整理了 Rocky Linux 9.6 系统中 / 根目录下各个一级目录的全称与用途,适合 RHCSA/RHCE 学习者作为基础知识点复习使用。

目录全称功能说明
/binBinary系统启动和单用户模式下的基本命令(如 ls, cp, mv, rm 等)。已被合并至 /usr/bin。
/bootBoot Loader Files存放启动引导相关文件,如 grub2、vmlinuz(内核)、initramfs。必须单独分区。
/devDevices所有设备文件(如硬盘、终端、USB、挂载卷等),由 udev 动态管理。
/etcEt Cetera系统和应用程序的配置文件存放目录。例如:/etc/passwd, /etc/fstab。
/homeHome Directory普通用户的主目录(如 /home/zesheng),用于存储用户文件、配置等。
/libLibrary系统引导和基本命令所需的共享库(libc 等)。大部分已被合并到 /usr/lib。
/lib6464-bit Libraries存放 64 位系统的共享库(.so 文件)。是 x86_64 系统上必不可少的目录。
/mediaRemovable Media Mounts可移动设备挂载点(如 U 盘、光盘),现代系统较少直接用这个。
/mntMount Temporary临时挂载点,一般用于手动挂载磁盘或临时访问某个挂载设备。
/optOptional第三方应用程序的安装目录(如 Oracle、VMware 等)。不会干扰系统主文件。
/procProcess Info (虚拟文件系统)内核与进程信息接口(如 /proc/cpuinfo, /proc/meminfo),不占磁盘空间。
/rootRoot Home**超级管理员(root 用户)**的主目录,默认不在 /home/ 中。
/runRuntime Information运行时数据(如进程 PID、服务套接字),系统重启后会清空,取代旧的 /var/run。
/sbinSystem Binary系统管理工具和启动用命令(如 fsck, reboot, mount)。现在多链接到 /usr/sbin。
/srvService Data某些服务(如 Web/FTP)公开数据的目录,RHEL 系列系统中很少用。
/sysSystem Info (虚拟文件系统)内核与硬件的接口,例如挂载设备、驱动信息,类似 /proc。由 sysfs 管理。
/tmpTemporary Files临时文件目录,系统重启后会被清空。不要用于长期保存重要数据。
/usrUnix System Resources存放用户命令、库文件、文档等的主目录,内容较大。
/usr/binUser Binaries用户使用的大部分程序命令都在这里(如 vim, git, ssh)。
/usr/sbinSystem Binaries系统管理员用的工具(如 sshd, useradd, firewalld 等)。
/usr/libUser Libraries32 位的程序库文件(共享库),大多为程序依赖。
/usr/lib64User Libraries (64-bit)64 位的共享库,现代系统中非常关键。
/usr/localLocal Programs系统管理员本地手动安装的软件,不受系统包管理器管理。
/varVariable Files会变化的数据文件目录,如日志、缓存、数据库、邮件、锁等。
/var/log系统和服务日志,如 /var/log/messages, /var/log/secure
/var/lib应用的数据库、状态信息,如 /var/lib/dnf, /var/lib/rpm
/var/spool排队任务,如邮件、打印、计划任务等

🧠 小技巧:快速记忆分类表

分类关键目录
📦 程序命令/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin
📚 库文件/lib, /lib64, /usr/lib, /usr/lib64
⚙️ 配置文件/etc, /usr/share, /opt/<软件名>/etc
📁 用户目录/home, /root
🧩 临时/缓存/tmp, /var/tmp, /var/cache
🔒 日志/数据库/var/log, /var/lib, /var/spool
🧠 内核/进程信息/proc, /sys, /run, /dev
💻 启动相关/boot, /grub2, /efi(若是 UEFI)

②📁 /usr/share/ 目录详解

🧠 一句话理解

/usr/share/ 是用来存放平台无关的、可共享的只读数据文件的目录。


📦 通俗理解举例

你安装了一个软件 vim,它会包含:

文件类型放置位置内容说明
可执行程序/usr/bin/vim可以运行的二进制文件
帮助文档/模板/usr/share/vim/语法高亮、帮助文档、示例配置等

✅ 常见子目录说明

子目录用途说明
/usr/share/doc/文档(README、LICENSE)
/usr/share/man/man 手册页
/usr/share/info/GNU info 帮助文档
/usr/share/icons/图标资源
/usr/share/locale/国际化语言翻译支持
/usr/share/fonts/字体资源
/usr/share/applications/桌面启动项 (.desktop 文件)

📌 特点总结

特性描述
✅ 只读一般用户无需也不应修改
✅ 跨平台与 CPU 架构无关
✅ 可共享可在多系统中共享使用

🚫 不适合放在这里的内容

类型推荐目录理由
可执行程序/usr/bin/、/usr/sbin/平台相关,需编译
配置文件/etc/主机相关,可修改
日志/缓存/var/动态生成,不共享

✅ Git 举例

/usr/bin/git                    # Git 可执行程序
/usr/share/doc/git/            # Git 文档
/usr/share/git-core/templates/ # 默认初始化模板

🔁 总结

/usr/share/ 是系统中共享、只读、跨平台的资源仓库。常用于放置说明书、翻译、图标、模板等内容。

⑨问题合集

为什么/usr/目录下会有 lib/ lib64/ libexec/ 3个lib目录?

lib = library 共享库 主要出现3个目录的原因是 历史版本+ 架构区分 + 程序内部组件隔离

linux系统早期程序是32位系统,也就是 386 字眼。不过现在大多数软件都转为64位了, 因为操作系统为64位。 但是为了兼容 以前的32位操作系统,一般程序也会有32位的版本提供下载,比如notepad++ 由于历史原因,32—>64 位,操作系统为了兼容32位和64位的程序软件,所以就会有两个版本的软件库来提供给程序使用。 于是结果就是: linux系统中就有了 /usr/lib/ /usr/lib64 这两个目录

其实 windows操作系统 也对此做了区分。

但是操作系统发展到如今,32位基本已经被淘汰了,市面上大多数都是64位操作系统。 渐渐的/usr/lib目录也就不仅仅只存储32位操作系统库文件,而是作为了主共享库。

在如今的Ubuntu系统中,就已经不再区分/lib64 和 /lib 了,大部分安装的软件库文件都在 /usr/lib中。而/lib64仅仅作为补充。所以/usr/lib/目录中文件非常多,而/usr/lib64/目录下文件比较少。 而在Rocky Linux等redhat系列的linux 发行版中,/usr/lib64/目录下的库文件还是非常多的,还是保留了将/usr/lib64/作为64位操作系统的主目录。

③ /usr/libexec/ 目录主要存放的是程序的执行文件 /usr/libexec —— 程序的内部执行文件 libexec 里面不是库,而是 给程序内部调用的可执行文件。