CentOS根目录结构遵循FHS标准,/bin与/usr/bin存基础命令(/bin为符号链接),/sbin、/usr/sbin、/usr/local/sbin分存核心与本地管理工具,/etc存全局配置,/var存动态数据(建议独立分区),/home、/root、/opt分隔用户空间与第三方软件,/tmp与/var/tmp区分重启级临时文件,/proc与/sys为内核虚拟文件系统,/boot与/dev支撑启动与设备访问,/usr为只读共享资源主体。

CentOS(基于RHEL)的根目录结构遵循Linux文件系统层次标准(FHS),各目录有明确定义和职责。理解这些目录的作用,对系统管理、故障排查和安全加固至关重要。
/bin 和 /usr/bin:基础用户命令存放处
存放所有用户(包括root)常用的基础可执行程序,如 ls、cp、bash、grep 等。CentOS 7+ 中,/bin 实际是 /usr/bin 的符号链接,实现“usr-merge”统一布局。系统启动早期即需访问,因此必须位于根文件系统内(不能挂载在独立分区)。
/sbin、/usr/sbin 和 /usr/local/sbin:系统管理命令专属区
专供系统管理员使用的二进制程序,例如 fdisk、iptables、systemctl、ifconfig(旧版)等。
- /sbin:核心系统管理工具,启动时必需(如 init、ip);
- /usr/sbin:非紧急但常用的管理命令(如 httpd、sshd);
- /usr/local/sbin:本地编译安装的系统级工具,优先级高于 /usr/sbin(PATH中靠前)。
/etc:系统全局配置中心
存放主机本地配置文件,纯文本为主,不包含可执行程序或数据。典型内容包括:
- /etc/passwd、/etc/shadow:用户与密码策略;
- /etc/fstab:开机自动挂载配置;
- /etc/yum.repos.d/:YUM源定义;
- /etc/sysconfig/:网络、防火墙、服务启动参数(CentOS特有习惯路径);
- /etc/systemd/system/:自定义或覆盖 systemd 服务单元文件。
该目录严禁随意写入二进制或日志——那是其他目录的职责。
/var:动态运行时数据存储区
保存系统运行过程中持续变化的文件,如日志、缓存、数据库、邮件队列等。关键子目录包括:
- /var/log:所有服务及系统日志(messages、secure、audit/);
- /var/cache:软件包管理器(yum/dnf)缓存、网页代理缓存等;
- /var/lib:服务运行状态数据(/var/lib/rpm 存RPM数据库,/var/lib/mysql 是MySQL数据目录);
- /var/spool:待处理任务队列(/var/spool/cron 存用户定时任务)。
建议将 /var 单独分区,避免日志暴涨导致根分区满而系统异常。
/home、/root 和 /opt:用户空间与第三方软件区
/home 是普通用户的主目录根,每个用户子目录(如 /home/john)默认存放其个人配置(.bashrc)、文档、下载等。
/root 是 root 用户的家目录,独立于 /home,保障管理员登录不受 /home 分区故障影响。
/opt 用于安装第三方大型独立软件包(如 Oracle、MATLAB),结构通常为 /opt/package-name/bin、/opt/package-name/lib,不混入系统路径,便于整体迁移或卸载。
/tmp 和 /var/tmp:临时文件暂存点
/tmp 供所有用户和进程存放临时文件,系统重启后通常清空(由 systemd-tmpfiles 或 tmpwatch 控制);
/var/tmp 也用于临时文件,但设计为**跨重启保留**(至少保留10-30天),适合需要持久化暂存的场景(如大文件上传中途断点续传)。两者均应具备 sticky bit(drwxrwxrwt),防止用户删除他人文件。
/proc 和 /sys:虚拟文件系统,提供内核运行时视图
二者均不占用磁盘空间,是内核内存中动态生成的“窗口”:
- /proc:进程信息(/proc/1234/)、硬件状态(/proc/cpuinfo、/proc/meminfo)、内核参数(/proc/sys/ 可读写,等效于 sysctl);
- /sys:设备驱动模型、电源管理、热插拔信息(如 /sys/class/net/ens33/ 查网卡状态),是 udev 和 systemd 设备管理的基础。
误删或写错可能导致系统不稳定,操作前务必确认用途。
/boot 和 /dev:启动支持与设备映射
/boot 包含启动必需文件:内核镜像(vmlinuz-*)、初始内存盘(initramfs-*)、GRUB 配置(/boot/grub2/grub.cfg)。该目录通常独立分区(ext4/xfs),确保 BIOS/UEFI 能直接读取。
/dev 是设备文件目录,由 udev 动态创建。每台物理/虚拟设备(硬盘、终端、随机数生成器)在此表现为文件(如 /dev/sda、/dev/tty1、/dev/random),程序通过读写这些“文件”与硬件交互。
/usr:只读共享资源主体(“Unix System Resources”)
传统上存放大部分用户命令、库、文档和静态资源,CentOS 中已与 /bin、/sbin 合并逻辑路径,但仍保持语义区分:
- /usr/bin、/usr/sbin:非核心但常用命令;
- /usr/lib、/usr/lib64:32/64位共享库(.so 文件);
- /usr/share:架构无关数据(man手册、locale语言包、图标主题);
- /usr/include:C头文件,供开发使用;
- /usr/src:内核源码(如安装 kernel-devel 包后)。
该目录应视为只读(除非升级或安装软件),不应手动修改。
掌握这些目录的边界与协作关系,能显著提升运维效率和问题定位速度。实际环境中,还需结合 mount 输出确认哪些是独立挂载点,以及 df -h 观察空间分布——结构清晰,但容量规划同样关键。











