3.4. 目錄結構
前一頁 | 章 3. UNIX 基礎概念 | 下一頁

## 3.4. 目錄結構

認識 FreeBSD 的目錄架構，就可對系統有概略的基礎理解。 最重要的莫過於整個目錄的根目錄，就是 “/” 目錄， 該目錄會在開機時最先掛載 (mount)，裡面會有開機所會用到必備檔案。 此外，根目錄還有紀錄其他檔案系統的掛載點相關設定。

「掛載點」就是讓新增的檔案系統，能接到上層的檔案系統 (通常就是「根目錄」檔案系統) 的目錄。 在 節 3.5, “磁碟組織” 這邊對此有更詳細介紹。 標準的掛載點包括了 `/usr`、`/var`、 `/tmp`、`/mnt` 以及 `/cdrom`。 這些目錄通常會記錄在 `/etc/fstab` 設定檔內。 `/etc/fstab` 是記錄各檔案系統及相關掛載點的表格。 大部分在 `/etc/fstab` 有記錄的檔案系統，會在開機時由 rc(8) script 來自動掛載，除非它們有設定 `noauto` 選項。 其中細節說明可參閱 節 3.6.1, “ `fstab` 檔”。

有關檔案系統架構的完整說明可參閱 hier(7)。 現在呢，讓我們大致先一窺常見的目錄有哪些吧。

目錄 | 說明
--- | ---
`/` | 檔案系統的根目錄。
`/bin/` | single-user、multi-user 兩種模式皆可使用的基本工具 。
`/boot/` | 作業系統開機過程會用到的程式、設定檔。
`/boot/defaults/` | 預設的開機啟動設定檔，詳情請參閱 loader.conf(5) 。
`/dev/` | Device nodes，詳情請參閱 intro(4)。
`/etc/` | 系統設定檔及一些 script 檔。
`/etc/defaults/` | 預設的系統設定檔，詳情請參閱 rc(8)。
`/etc/mail/` | MTA(Mail Transport Agent)的相關設定檔，像是 sendmail(8)。
`/etc/namedb/` | `named` 設定檔，詳情請參閱 named(8)。
`/etc/periodic/` | 每日、每週、每月透過 cron(8); 執行的定期排程 script， 詳情請參閱 periodic(8)。
`/etc/ppp/` | `ppp` 設定檔，詳情請參閱 ppp(8)。
`/mnt/` | 系統管理者慣用充當臨時掛載點的空目錄。
`/proc/` | Process 檔案系統，詳情請參閱 procfs(5) 及 mount_procfs(8)。
`/rescue/` | 緊急救援用途的一些 statically linked 程式，詳情請參閱 rescue(8)。
`/root/` | `root` 帳號的家目錄。
`/sbin/` | 供 single-user 及 multi-user 環境使用的系統程式及管理工具 。
`/tmp/` | 臨時檔案。 一般而言，重開機之後 `/tmp` 內的東西會被清除掉。 而通常會將 memory-based 檔案系統掛載在 `/tmp` 上。 這些瑣事可透過 tmpmfs 相關的 rc.conf(5) 環境變數來自動完成 。(或是在 `/etc/fstab` 內做設定， 詳情請參閱 mdmfs(8)。)
`/usr/` | 主要是使用者所安裝的工具程式、應用程式存放處。
`/usr/bin/` | 常用工具、開發工具、應用軟體。
`/usr/include/` | 標準 C include 的相關 header 檔案庫。
`/usr/lib/` | 函式庫存放處。
`/usr/libdata/` | 其他各式工具的資料檔。
`/usr/libexec/` | 系統 daemons 及系統工具程式(透過其他程式來執行)。
`/usr/local/` | 存放一些自行安裝的執行檔、函式庫等等。 同時，也是 FreeBSD ports 架構的預設安裝目錄。 `/usr/local` 內的目錄架構大致與 `/usr` 相同，詳情請參閱 hier(7) 說明。 但 man 目錄例外，它們是直接放在 `/usr/local` 底下，而非 `/usr/local/share`，而 ports 所安裝的說明文件則在 `share/doc/`port``。
`/usr/obj/` | 在編譯 `/usr/src` 目錄時所產生的相關架構 object 檔案。
`/usr/ports` | FreeBSD Ports Collection (optional)。
`/usr/sbin/` | 系統 daemon 及系統工具(直接由使用者執行)。
`/usr/share/` | 各架構皆共通的檔案。
`/usr/src/` | BSD 本身的原始碼(或自行新增的)。
`/usr/X11R6/` | X11R6 相關套件的執行檔、函式庫等(optional)。
`/var/` | 存放各種用途的 log 檔、臨時或暫時存放、列印或郵件的 spool 檔案。有時候，memory-based 檔案系統也會掛載在 `/var`。 這些瑣事可透過 varmfs 相關的 rc.conf(5) 環境變數來自動完成。(或是在 `/etc/fstab` 內做設定，相關細節請參閱 mdmfs(8)。)
`/var/log/` | 各項系統記錄的 log 檔案。
`/var/mail/` | 各使用者的 mailbox 檔案。
`/var/spool/` | 各種印表機、郵件系統的 spool 目錄。
`/var/tmp/` | 臨時檔案。 這些檔案在重開機後通常仍會保留，除非 `/var` 是屬於 memory-based 檔案系統。
`/var/yp` | 記錄 NIS maps。

前一頁 | 上一層 | 下一頁
3.3. 權限 | 起始頁 | 3.5. 磁碟組織

本文及其他文件，可由此下載： ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。

若有 FreeBSD 方面疑問，請先閱讀 FreeBSD 相關文件，如不能解決的話，再洽詢 <questions@FreeBSD.org>。
關於本文件的問題，請洽詢 <doc@FreeBSD.org>。