Linux 目录树结构详解
Linux 目录结构遵循 FHS(Filesystem Hierarchy Standard) 标准,以下是各目录的详细说明:
核心系统目录
| 目录 | 作用描述 | 典型文件示例 |
|---|---|---|
| /bin | 存放所有用户必需的基础命令(如 ls, cp) |
/bin/ls, /bin/bash |
| /sbin | 存放管理员专用的系统管理命令(如 fdisk, iptables) |
/sbin/reboot, /sbin/ip |
| /boot | 存放内核文件和启动引导文件 | /boot/vmlinuz-xxx, /boot/grub |
| /lib | 存放系统核心共享库(32 位系统) | /lib/libc.so.6 |
| /lib64 | 存放 64 位系统的核心共享库 | /lib64/ld-linux-x86-64.so.2 |
| /etc | 存放全局配置文件(系统级配置) | /etc/passwd, /etc/nginx/nginx.conf |
| /dev | 存放设备文件(如磁盘、终端等) | /dev/sda, /dev/tty1 |
| /proc | 虚拟文件系统,实时反映内核和进程状态 | /proc/cpuinfo, /proc/meminfo |
| /sys | 虚拟文件系统,用于访问和配置硬件设备 | /sys/class/net/eth0 |
用户空间目录
| 目录 | 作用描述 | 典型文件示例 |
|---|---|---|
| /home | 普通用户的家目录(每个用户独立子目录) | /home/john, /home/mary |
| /root | 超级管理员的家目录 | /root/.bashrc |
| /usr | 用户程序资源目录(占磁盘空间最大) | 详见下方扩展 |
| /opt | 存放第三方独立软件包(如商业软件) | /opt/google/chrome |
| /run | 存放运行时数据(如 PID 文件、套接字等),重启后清空 | /run/nginx.pid |
可变数据目录
| 目录 | 作用描述 | 典型文件示例 |
|---|---|---|
| /var | 存放经常变化的动态数据 | 详见下方扩展 |
| /tmp | 存放临时文件(所有用户可写),默认10 天自动清理 | /tmp/downloads/ |
/usr 子目录详解
/usr/
├── bin/ # 用户级应用程序(如 `gcc`, `python`)
├── sbin/ # 非关键系统管理命令(如 `sshd`)
├── lib/ # 用户级共享库
├── include/ # C/C++ 头文件
├── share/ # 架构无关数据(如文档、图标)
├── local/ # 用户手动编译安装的软件(优先级高于系统包)
└── src/ # 内核源代码(如 `linux-headers-xxx`)