Linux系统的目录结构遵循文件系统层次结构标准(FHS),这使得不同发行版之间保持了良好的一致性。其主要设计理念是通过目录分类来分离系统核心文件、用户文件、配置文件和可变数据,从而简化权限管理和故障排查。
以下是Linux系统核心目录结构的表格展示:
| 目录路径 | 主要功能与用途描述 | 常见内容/示例 |
|---|---|---|
| / | 文件系统的起点,所有目录和文件的根目录。 | 包含整个系统所有的基础目录。 |
| /bin | 存放所有用户都可使用的基础命令,这些命令是系统启动和恢复所必需的。 | ls, cp, cat, mv, bash等。 |
| /boot | 存放系统启动所需的文件。 | 内核 (vmlinuz), 引导加载程序 (如GRUB), initramfs。 |
| /dev | 包含设备文件,用于访问计算机硬件或虚拟设备。 | /dev/sda(硬盘), /dev/tty(终端), /dev/null(空设备)。 |
| /etc | 存放系统和应用程序的配置文件。 | /etc/fstab(文件系统表), /etc/passwd(用户账户), 网络配置、服务配置等。 |
| /home | 普通用户的主目录,每个用户通常有一个独立的子目录存放个人文件。 | /home/username(用户个人文件、配置等)。 |
| /lib | 存放系统核心共享库文件,这些库文件是/bin和/sbin中程序运行所必需的。 | 共享库文件(如 .so文件)。 |
| /media | 用于自动挂载可移动设备的目录。 | U盘、光盘等插入后常自动挂载于此。 |
| /mnt | 供系统管理员临时手动挂载文件系统的目录。 | 临时挂载另一个硬盘分区或网络共享。 |
| /opt | 用于安装第三方或大型可选软件包。 | 如 /opt/google/chrome/。 |
| /proc | 虚拟文件系统,提供内核和进程的实时信息,内容存储在内存中。 | /proc/cpuinfo(CPU信息), /proc/meminfo(内存信息)。 |
| /root | 系统管理员(root用户)的主目录。 | root用户的个人文件和配置。 |
| /sbin | 存放供系统管理员使用的系统管理命令,通常需要root权限执行。 | fdisk, ifconfig, reboot, shutdown等。 |
| /tmp | 存放临时文件,所有用户可读写,系统重启后文件通常会被清除。 | 程序和用户创建的临时文件。 |
| /usr | 存放用户应用程序和文件(”Unix System Resources”),包含多个重要子目录: | |
| ↳ /usr/bin | 非系统运行所必需的用户命令。 | python, gcc等。 |
| ↳ /usr/sbin | 非系统运行所必需的系统管理命令。 | sshd等。 |
| ↳ /usr/lib | 应用程序的共享库文件。 | |
| ↳ /usr/local | 用户手动编译安装的软件的默认位置。 | 本地编译的软件。 |
| ↳ /usr/share | 存放架构无关的共享数据,如文档、图标、字体等。 | |
| /var | 存放经常变化的动态数据,包含多个重要子目录: | |
| ↳ /var/log | 存放系统和应用程序的日志文件。 | syslog, auth.log等。 |
| ↳ /var/cache | 应用程序的缓存数据。 | |
| ↳ /var/lib | 应用程序的状态信息和数据库文件。 | 如 /var/lib/mysql/。 |
| ↳ /var/spool | 存放队列数据,如邮件、打印任务等。 | |
| /run | 存放系统启动后的运行时临时文件,如进程ID(PID)文件、锁文件等,重启后清空。 | |
| /srv | 存放特定服务的数据文件。 | Web服务器文件 (/srv/www/), FTP资源等。 |
💡 记住几个核心原则
- 一切皆文件:在Linux中,硬件设备、进程信息等大多都被抽象为文件进行管理。
- 权限管理:不同的目录有不同的权限设置,修改系统核心目录(如
/etc,/bin,/sbin)需格外谨慎,建议使用sudo并提前备份。 - Home目录最重要:你的个人文件和配置通常存放在
/home/你的用户名下,这是重装系统时最需要备份的目录。
希望这份表格能帮助你快速建立对Linux系统目录结构的整体认识。
