Linux 系统的目录结构(Filesystem Hierarchy Standard, FHS)定义了 Linux 系统中文件系统的标准布局,以下是一些常见目录的功能:
根目录 /
- 描述:所有文件和目录的起始点,Linux 文件系统的根。
- 内容:所有的系统文件和目录都在根目录下,根目录没有扩展或变化的空间,通常它只包含必要的系统文件和子目录。
- 常见内容 :
bin/
、etc/
、home/
、lib/
、opt/
、proc/
、root/
、tmp/
、usr/
、var/
等。
主要目录及其功能
1. /bin
- 描述:二进制文件目录,存放系统启动时最基本的命令工具。
- 常见内容 :
- 基本的命令如
ls
、cp
、mv
、cat
、rm
等,这些命令是系统恢复和管理所必需的。
- 基本的命令如
2. /boot
- 描述:启动文件目录,包含操作系统启动所需要的核心文件。
- 常见内容 :
- 内核文件 (
vmlinuz
)、引导加载程序 (GRUB
、LILO
) 配置文件、启动时用到的初始化程序。 - 示例:
/boot/grub/
。
- 内核文件 (
3. /dev
- 描述:设备文件目录,Linux 将设备当作文件处理,所有硬件设备的文件都在该目录下,在 Linux 中访问设备的方式和访问文件的方式是相同的。
- 常见内容 :
- 硬件设备文件,如
/dev/sda
(硬盘设备)、/dev/tty
(终端设备)、/dev/null
(空设备)等。
- 硬件设备文件,如
4. /etc
- 描述:系统配置文件目录,存放系统和应用程序的配置文件。
- 常见内容 :
- 系统服务配置文件,如
/etc/passwd
(用户账户信息)、/etc/fstab
(文件系统表)、/etc/hostname
(主机名配置)。 - 系统服务的启动脚本文件。
- 系统服务配置文件,如
5. /home
- 描述:用户家目录,所有普通用户的个人文件都存放在这个目录下。
- 常见内容 :
- 每个用户的家目录,如
/home/user1/
、/home/user2/
等。普通用户的个人数据、配置文件和桌面文件存放在此。
- 每个用户的家目录,如
6. /lib
- 描述:共享库文件目录,存放系统运行时需要的共享库文件,类似于 Windows 里的 DLL 文件。
- 常见内容 :
- 系统运行所需的动态链接库文件,如
libc.so
,以及内核模块文件。 - 示例:
/lib/modules/
存放内核模块。
- 系统运行所需的动态链接库文件,如
7. /lost+found
- 描述:文件系统修复目录,一般情况下是空的,当系统非法关机后,会保存文件系统损坏后恢复的部分数据。
- 常见内容 :
- 文件系统检查工具(如
fsck
)在修复文件系统时恢复的部分文件。
- 文件系统检查工具(如
8. /media
- 描述:可移动媒体设备挂载点,临时挂载的设备(如 USB 驱动器、CD-ROM)一般挂载在此目录。
- 常见内容 :
- 挂载的设备如
/media/cdrom/
或/media/usb/
。
- 挂载的设备如
9. /mnt
- 描述:临时挂载点,通常用于系统管理员临时挂载的文件系统或设备。
- 常见内容 :
- 用于手动挂载的分区或文件系统,通常是暂时性的文件系统挂载。
10. /opt
- 描述:可选的应用程序软件目录,存放附加的软件包和应用程序。
- 常见内容 :
- 安装的第三方软件包,如
/opt/
下存放的某些大型软件包或自定义应用程序。 - 示例:
/opt/google/
或/opt/eclipse/
。
- 安装的第三方软件包,如
11. /proc
- 描述:虚拟文件系统目录,包含运行时系统信息,主要用于进程信息。
- 常见内容 :
- 动态生成的进程和系统信息,如
/proc/cpuinfo
(CPU 信息)、/proc/meminfo
(内存信息)、/proc/[pid]/
(进程信息)。
- 动态生成的进程和系统信息,如
12. /root
- 描述 :超级用户的家目录,
root
用户的个人文件和配置文件存放在此。 - 常见内容 :
root
用户的个人文件,例如/root/.bashrc
等。
13. /run
- 描述:运行时数据目录,存放系统启动后动态生成的临时文件。
- 常见内容 :
- 系统运行时产生的状态文件,如进程 PID 文件、锁文件等。
- 示例:
/run/lock/
和/run/user/
。
14. /srv
- 描述:服务数据目录,存放与服务相关的数据文件。
- 常见内容 :
- Web 服务数据、FTP 服务数据、数据库数据等。
- 示例:
/srv/www/
存放网站相关的数据。
15. /sys
- 描述:虚拟文件系统目录,提供内核与用户空间的接口。
- 常见内容 :
- 系统硬件信息和设置,如
/sys/class/
和/sys/devices/
用于访问和配置硬件设备。
- 系统硬件信息和设置,如
16. /tmp
- 描述:临时文件目录,用于存放临时的文件。
- 常见内容 :
- 系统和应用程序运行过程中生成的临时文件。
- 这个目录通常在系统重启后会被清空。
17. /usr
- 描述:用户相关的只读数据,存放系统和应用程序的软件包及文档。
- 常见内容 :
/usr/bin/
:大多数应用程序的二进制文件。/usr/lib/
:系统共享库文件。/usr/share/
:共享的数据和文档,如man
页、程序帮助文件。/usr/local/
:本地安装的程序和脚本。
18. /var
- 描述:可变数据目录,存放程序运行过程中产生的经常变化的文件。
- 常见内容 :
- 日志文件,如
/var/log/
。 - 邮件队列、打印队列、缓存文件等。
- 日志文件,如
Linux 文件系统结构概念总结
- 根目录
/
:所有文件和目录的顶层,所有的目录都以/
为根。 - 二进制目录
/bin
、/sbin
:存放最基本的系统命令和管理员命令。 - 用户目录
/home
:普通用户的个人目录。 - 系统配置
/etc
:存放系统和程序的配置文件。 - 设备文件
/dev
:所有硬件设备的文件。 - 共享库
/lib
:系统共享库文件。 - 临时文件
/tmp
、/var
:存放临时文件和运行时变化的文件。 - 挂载点
/mnt
、/media
:挂载外部设备或文件系统。
扩展知识
/usr
和/usr/local
:用于存放应用程序和软件包。/usr
是系统级软件包安装的地方,而/usr/local
通常是管理员手动安装的程序。- 文件权限和安全性 :
/etc/
目录下的配置文件控制着系统的访问和安全策略。