Debian Linux 於根目錄(最頂層)階層 的 目錄規劃可見此篇: Filesystem Hierarchy Standard - Debian Wiki
註: Ubuntu Linux 亦同~
Debian Filesystem Hierarchy Standard
下述是簡單的翻譯.
- 註1: 頂級(top-level) 是根目錄, 第二層級(Secondary hierarchy)、第三層級(Tertiary hierarchy) 是內容 等同於 "根目錄" 分類法 的意思
- 註2: 內容提到的 FHS 可見: Filesystem Hierarchy Standard
/bin/
- 給所有使用者必須要的執行命令程式 (ex: cat, ls, cp)
- (特別是 開機 或者 修復系統需要用到)
/boot/
- 開機檔案 Boot loader, kernels and initrd files.
/dev/
- 設備檔案 devices files, ex :/dev/null
/etc/
- 系統、程式主要的設定檔 (from et cetera)
/home/
- 使用者的 Home 目錄
/lib/
- 給 /bin/ 和 /sbin/ 必要的 Library.
- (開機或修復系統必須的 Library)
/lost+found/
- 在系統(fsck)修復("recovered")期間找到的 一些檔案和碎片(Not part of FHS)
/mnt/
- 暫時/臨時 掛載的檔案系統
/media/
- 移除性媒體 (ex: CD-ROMs) 的掛載點 (appeared in FHS-2.3)
/opt/
- 附加 軟體應用程式 Packages
- 未經編譯的, 不是 ".deb" 的二進位檔 (是 tar ... 等等的檔案) 會放在此目錄.
- /opt/bin/ : 同 最上層(top-level) 的 /bin (Same as for top-level hierarchy)
- /opt/include/ : Same as for top-level hierarchy
- /opt/lib/ : Same as for top-level hierarchy
- /opt/sbin/ : Same as for top-level hierarchy
- /opt/share/ : Same as for top-level hierarchy
/proc/
- 將 Kernel 文件化的 虛擬作業系統 和 行程狀態(process status), 一般都是文字檔案 (ex: uptime, network)
/root/
- root 帳號的 Home 目錄
/sbin/
- 系統管理者的應用程式 (ex: init, route, ifup) (系統應用程式)
- (開機 或者 修復系統 需要用到的檔案)
/tmp/
- 暫存檔案
/selinux/
- SE-Linux 執行運作的設定 (Not part of FHS).
/srv/
- Site-specific data which is served by the system (Not part of FHS).
/sys/
- 解開(exporting) Kernel objects 的檔案系統.
- (很多 /proc/* 的檔案必須取自此處...)
/usr/
- 可以公開分享的第二層級(Secondary hierarchy), 唯讀的資料 (從前 UNIX source 的檔案庫(repository), 現在是 UNIX 系統 resources)
- (這些不會是 開機 或 修復系統必須的檔案)
- /usr/bin/ : Same as for top-level hierarchy
- /usr/include/ : 標準載入檔案
- /usr/lib/ : Same as for top-level hierarchy
- /usr/sbin/ : Same as for top-level hierarchy
- /usr/share/ : 獨立系統架構 (可被分享的) 的資料
- /usr/src/ : Source code (產生 Debian Packages 的 Source code, 參照同: /usr/local/src/)
- /usr/X11R6/ : X Window System, Version 11 Release 6
- /usr/local/ : 系統管理者 於 本機安裝程式、資料 用的, 屬於 第三層級(Tertiary hierarchy).
- /usr/local/bin : 於本機使用 編譯過的二進位檔、 Shell script .. 等等.
- /usr/local/src : Source code (這邊放的是不屬於 Debian 內含的程式, 而是外部程式 解開 和 編譯完成會放於此處.)
/var/
- 變動性的資料, 像是 Logs, 資料庫, 網站, 和 暫存過水(ex: Email) 的 資料.
Debian / Ubuntu Linux 將 /var/run 搬到 /run
Debian Linux 於 Wheezy 版本 Release, 將 /var/run 搬到最頂層 /run (Ubuntu 11.10 亦同).
搬到最頂層的差異, 事實上沒什麼差別, 只是這篇文章可以讓我們對 /run 有更深入的認識~
詳見: Release Goals / Run Directory - Debian Wiki - 下述摘錄自此篇
/run is a new cross-distribution location for the storage of transient state files—that is, files containing run-time information that may or may not need to be written early in the boot process and which does not require preserving across reboots.
/run is a tmpfs.
- /var/run → /run
- /var/lock → /run/lock
- /dev/shm → /run/shm [currently only Debian plans to do this]
- /tmp → /run/tmp [optional; currently only Debian plans to offer this]
/run also replaces some other locations that have been used for transient files:
- /lib/init/rw → /run
- /dev/.* → /run/*
- /dev/shm/* → /run/*
- writable files under /etc → /run/*
/run 目前比較常會用到的做個筆記:
- pid 寫到 /run
- lock 檔案可以寫到 /run/lock
- 想丟到 RAM 的暫存資料, 可以先寫到 /run/shm
相關網頁
- Debian 開發者天地
- Filesystem Hierarchy Standard - Unix 檔案系統架構規劃文件
- Unix 目錄結構的來歷