FreeBSD 目录层次结构对于获得对系统的整体理解是至关重要的。最重要的目录是根目录即“/”。这个目录是在启动时第一个被挂载的,它包含了准备操作系统进行多用户操作所必需的基本系统。根目录还包含其他文件系统的挂载点,它们在过渡到多用户操作时被挂载。
挂载点是一个目录,在这个目录上可以将附加文件系统嫁接到父文件系统(通常是根文件系统)。这在磁盘组织中有进一步说明。标准挂载点包括 /usr/,/var/,/tmp/,/mnt/ 和 /cdrom/。这些目录通常与 /etc/fstab 中的条目相对应。这个文件是各种文件系统和挂载点的列表,并由系统读取。/etc/fstab 中的大多数文件系统会在引导时自动挂载,来自脚本 rc(8),除非它们的条目包括参数 noauto。详情请参阅 fstab 文件。
文件系统层次结构的完整说明请参见 hier(7)。以下表格提供了最常见目录的简要概述。
目录 | 概述 |
---|---|
/
文件系统的根目录。
/bin/
对单用户和多用户环境都至关重要的用户实用程序。
/boot/
操作系统引导过程中使用的程序和配置文件。
/boot/defaults/
默认引导配置文件。有关详细信息,请参阅 loader.conf(5)。
/dev/
由 devfs(5)管理的设备特殊文件。
/etc/
系统配置文件和脚本。
/etc/defaults/
默认系统配置文件。有关详细信息,请参考 rc(8)。
/etc/periodic/
通过 cron(8) 每日、每周和每月运行的脚本。有关详细信息,请参考 periodic(8)。
/lib/
Critical system libraries needed for binaries in /bin
and /sbin
/libexec/
Critical system files
/media/
Contains subdirectories to be used as mount points for removable media such as CDs, USB drives, and floppy disks
/mnt/
通常由系统管理员用作临时挂载点的空目录。
/net/
自动挂载的 NFS 共享;参见 automaster(5)。
/proc/
进程文件系统。有关详细信息,请参阅 procfs(5),mountprocfs(8)。
/rescue/
在 rescue(8)中说明的用于紧急恢复的静态链接程序。
/root/
root 账户的主目录。
/sbin/
对单用户和多用户环境都至关重要的系统程序和管理实用程序。
/tmp/
临时文件,通常不会在系统重启时保留。通常在 /tmp 挂载一个基于内存的文件系统。这可以使用 rc.conf(5) 中与 tmpmfs 相关的变量自动化完成,或者在 /etc/fstab 中添加一个条目;有关详细信息,请参阅 mdmfs(8)。
/usr/
大多数用户实用程序和应用程序。
/usr/bin/
常用实用程序,编程工具和应用程序。
/usr/include/
标准的 C 头文件。
/usr/lib/
存档库。
/usr/libdata/
杂项实用数据文件。
/usr/libexec/
系统守护进程和被其他程序执行的系统实用程序。
/usr/local/
本地可执行文件和库。同样用作 FreeBSD ports框架的默认目标。在 /usr/local 中,应使用由 hier(7)为 /usr 勾画的一般布局。例外是 man 目录,它直接位于 /usr/local 而不是 /usr/local/share 下,而ports文档位于 share/doc/port 中。
/usr/ports/
FreeBSD ports (可选)。
/usr/sbin/
用户执行的系统守护程序和系统实用程序。
/usr/share/
与架构无关的文件。
/usr/src/
BSD 和/或本地源文件。
/var/
多用途日志,临时,瞬态和卷绕文件。
/var/log/
杂项系统日志文件。
/var/tmp/
通常会在系统重启后保留的临时文件。