Linux 系统采用一种层次化的树状目录结构,所有文件和目录都从根目录 / 开始。理解 Linux 的标准目录结构对于系统管理、故障排查以及日常使用至关重要。
本文将带你深入认识 Linux 中常见的系统目录及其用途。
一、根目录 /
根目录是整个文件系统的起点,所有其他目录和文件都挂载在它的下方。它通常只包含子目录,不建议存放普通用户文件。
/
├── bin
├── boot
├── dev
├── etc
├── home
├── lib
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin
├── srv
├── sys
├── tmp
├── usr
└── var
二、主要系统目录详解
/bin —— 基本用户命令
存放系统启动和运行所需的基本可执行命令(二进制文件),如 ls、cp、mv、cat 等。这些命令对所有用户可用。
“注意:在现代 Linux 发行版中,/bin 通常是 /usr/bin 的符号链接。
/sbin —— 系统管理命令
包含系统管理员(root)使用的系统管理命令,如 fdisk、ifconfig、reboot、iptables 等。
“同样,/sbin 也常是 /usr/sbin 的符号链接。
/etc —— 系统配置文件
几乎所有系统和应用程序的配置文件都存放在这里,例如:
/etc/network/ 或 /etc/sysconfig/network-scripts/:网络配置
该目录不包含二进制文件,仅用于配置。
/home —— 用户主目录
每个普通用户在此目录下拥有一个以用户名命名的子目录(如 /home/alice),用于存放个人文件、配置和数据。
“root 用户的主目录是 /root,不在 /home 下。
/root —— root 用户的家目录
超级用户(root)的主目录。出于安全考虑,它独立于 /home。
/tmp —— 临时文件目录
供所有用户和程序存放临时文件。系统重启后,此目录下的内容通常会被清空。
“某些系统使用 tmpfs 将 /tmp 挂载到内存中以提升性能。
/var —— 可变数据文件
存放经常变化的文件,如日志、缓存、邮件、数据库等:
/var/log:系统日志(如 syslog、auth.log)/var/spool:排队等待处理的数据(如打印任务、邮件)/var/lib:程序运行时需要保存的状态数据(如数据库文件)
/usr —— 用户程序和数据(“Unix System Resources”)
虽然名字叫“user”,但 /usr 实际上是系统级只读资源的集合,包含大量非核心但重要的程序和库:
/usr/bin:大多数用户命令(如 gcc、python)/usr/share:架构无关的数据(如文档、图标、字体)/usr/local:本地编译安装的软件(避免与系统包冲突)
“在早期 Unix 中,/usr 是单独挂载的磁盘分区,用于存放“非必需”的程序。
/opt —— 可选应用程序
第三方商业或大型软件包(如 Oracle、Google Chrome)常安装在此目录。每个软件通常拥有自己的子目录,如 /opt/google/chrome/。
/boot —— 启动相关文件
包含系统启动所需的文件:
- 内核镜像(如
vmlinuz-5.15.0-xx-generic) - 引导加载器配置(如 GRUB 的
grub.cfg)
/dev —— 设备文件
Linux 将硬件设备抽象为文件,存放在 /dev 中:
这些文件由内核在启动时或通过 udev 动态创建。
/proc —— 虚拟进程文件系统
这是一个虚拟文件系统(存在于内存中,不占用磁盘空间),提供内核和进程的实时信息:
/proc/[pid]/:每个进程的详细信息(如 cmdline, status)
修改某些 /proc 文件可动态调整内核参数(如 echo 1 > /proc/sys/net/ipv4/ip_forward)。
/sys —— 系统信息虚拟文件系统
与 /proc 类似,/sys 也是虚拟文件系统,主要用于展示设备、驱动和内核模块的层次结构,支持用户空间与内核交互(如电源管理、设备热插拔)。
/media 与 /mnt —— 挂载点
/media:自动挂载可移动设备(如 U 盘、光盘)的标准位置。
例如插入 U 盘后,可能自动挂载到 /media/user/USB_NAME。
/srv —— 服务数据
存放系统提供的服务数据,如:
/srv/www:网站文件(替代传统的 /var/www)
该目录强调“服务内容”与“系统配置/日志”的分离。
/run —— 运行时变量数据
自 Linux 3.x 起引入,用于存储系统启动后运行时的临时数据(如 PID 文件、套接字),比 /var/run 更规范。该目录在每次启动时重建。
三、FHS 标准简介
上述目录结构遵循 FHS(Filesystem Hierarchy Standard),即“文件系统层次标准”。FHS 由 Linux 基金会维护,旨在统一不同发行版的目录布局,提高兼容性和可维护性。
“主流发行版(如 Ubuntu、CentOS、Debian)均遵循 FHS。
四、小结
| |
|---|
/ | |
/bin | |
/sbin | |
/etc | |
/home | |
/root | |
/tmp | |
/var | |
/usr | |
/opt | |
/boot | |
/dev | |
/proc | |
/sys | |
/media | |
/mnt | |
/srv | |
/run | |