Man page - file-hierarchy(7)
Packages contains this manual
- systemd-initctl.service(8)
- systemd-networkd.service(8)
- org.freedesktop.locale1(5)
- timedatectl(1)
- systemd.resource-control(5)
- systemd.journal-fields(7)
- systemd-logind.service(8)
- busctl(1)
- systemd-pstore(8)
- systemd.generator(7)
- hostname(5)
- systemd-path(1)
- systemd-random-seed.service(8)
- locale.conf(5)
- systemd-firstboot(1)
- systemd-sysv-generator(8)
- systemd.syntax(7)
- loginctl(1)
- tmpfiles.d(5)
- org.freedesktop.portable1(5)
- systemd-timedated(8)
- systemd-pstore.service(8)
- systemd-escape(1)
- systemd-system-update-generator(8)
- systemd-backlight@.service(8)
- systemd-udev-settle.service(8)
- systemd.directives(7)
- systemd.index(7)
- systemd.environment-generator(7)
- systemd-network-generator.service(8)
- org.freedesktop.systemd1(5)
- systemd-user-sessions.service(8)
- systemd-pcrlock(8)
- systemd-journald.socket(8)
- systemd-user-runtime-dir(5)
- systemd-logind(8)
- systemd-initctl.socket(8)
- systemd-pcrlock-make-policy.service(8)
- systemd(1)
- systemd-inhibit(1)
- networkctl(1)
- systemd-random-seed(8)
- sysusers.d(5)
- systemd-boot-check-no-failures(8)
- systemd.v(7)
- systemd-creds(1)
- systemd-networkd(8)
- systemd-makefs(8)
- systemd-fsck(8)
- systemd-localed.service(8)
- journald.conf.d(5)
- systemd-pcrfs@.service(8)
- systemd-cat(1)
- systemd-id128(1)
- user@.service(5)
- systemd.unit(5)
- systemd.net-naming-scheme(7)
- systemd-volatile-root(8)
- org.freedesktop.machine1(5)
- systemd-firstboot.service(1)
- localtime(5)
- systemd-timedated.service(8)
- systemd-ask-password-console.path(8)
- varlinkctl(1)
- org.freedesktop.timedate1(5)
- systemd-run-generator(8)
- systemd-system.conf(5)
- systemd-journald-varlink@.socket(8)
- systemd-rfkill.socket(8)
- systemd.exec(5)
- systemd-journald@.socket(8)
- systemd-shutdown(8)
- systemd-fsck-usr.service(8)
- systemd-sysctl.service(8)
- systemd-pcrphase.service(8)
- systemd-localed(8)
- systemd-journald(8)
- systemd-ssh-proxy(1)
- systemd.offline-updates(7)
- systemd-pcrlock-secureboot-authority.service(8)
- systemd-ac-power(1)
- pam_systemd_loadkey(8)
- systemd.device(5)
- systemd-quotacheck.service(8)
- systemd-machine-id-commit.service(8)
- systemd-backlight(8)
- binfmt.d(5)
- systemd-getty-generator(8)
- networkd.conf.d(5)
- systemd.path(5)
- systemd-networkd-wait-online.service(8)
- system.conf.d(5)
- systemd-detect-virt(1)
- systemd-sleep.conf(5)
- sysctl.d(5)
- systemd-vpick(1)
- systemd-pcrlock-secureboot-policy.service(8)
- systemd-update-done(8)
- systemd-sysctl(8)
- pstore.conf.d(5)
- hostnamectl(1)
- systemd-confext(8)
- logind.conf.d(5)
- capsule@.service(5)
- systemd-poweroff.service(8)
- systemd-modules-load(8)
- systemd.special(7)
- org.freedesktop.network1(5)
- systemd.pcrlock.d(5)
- systemd-kexec.service(8)
- systemd-stdio-bridge(1)
- systemd-umount(1)
- systemd-quotacheck(8)
- systemd-sysext.service(8)
- systemd-notify(1)
- systemd-suspend-then-hibernate.service(8)
- systemd-growfs(8)
- systemctl(1)
- systemd-hibernate-clear.service(8)
- systemd-run(1)
- systemd-pcrlock-firmware-code.service(8)
- systemd-sysusers.service(8)
- environment.d(5)
- systemd-networkd-wait-online(8)
- systemd-initctl(8)
- systemd-remount-fs.service(8)
- systemd.network(5)
- systemd-journald@.service(8)
- systemd-pcrlock-file-system.service(8)
- systemd-hibernate-resume.service(8)
- systemd-tty-ask-password-agent(1)
- systemd-growfs@.service(8)
- systemd-ask-password(1)
- systemd-hibernate-resume-generator(8)
- systemd-sleep(8)
- systemd.image-policy(7)
- systemd-hibernate.service(8)
- systemd.timer(5)
- systemd-boot-check-no-failures.service(8)
- networkd.conf(5)
- systemd-tpm2-setup(8)
- systemd-pcrphase-initrd.service(8)
- systemd-xdg-autostart-generator(8)
- systemd-tmpfiles-setup-dev-early.service(8)
- systemd-binfmt(8)
- systemd-user-sessions(8)
- file-hierarchy(7)
- systemd-socket-proxyd(8)
- localectl(1)
- modules-load.d(5)
- machine-id(5)
- systemd-battery-check.service(8)
- systemd-update-done.service(8)
- systemd.mount(5)
- systemd-machine-id-setup(1)
- systemd-storagetm.service(8)
- systemd-growfs-root.service(8)
- systemd.swap(5)
- systemd-hibernate-resume(8)
- initrd-release(5)
- systemd.target(5)
- sleep.conf.d(5)
- systemd-mkswap@.service(8)
- journald@.conf(5)
- systemd-reboot.service(8)
- systemd-journald.service(8)
- systemd-socket-activate(1)
- systemd-tmpfiles-clean.timer(8)
- systemd-debug-generator(8)
- systemd-cgtop(1)
- systemd-measure(1)
- systemd.service(5)
- systemd.slice(5)
- systemd-remount-fs(8)
- systemd-ssh-generator(8)
- systemd-bsod(8)
- systemd-pcrlock-firmware-config.service(8)
- systemd-bsod.service(8)
- systemd-pcrmachine.service(8)
- logind.conf(5)
- bootup(7)
- kernel-install(8)
- systemd-networkd-wait-online@.service(8)
- systemd-network-generator(8)
- kernel-command-line(7)
- pstore.conf(5)
- rc-local.service(8)
- systemd-confext.service(8)
- systemd-soft-reboot.service(8)
- systemd.system-credentials(7)
- systemd-fstab-generator(8)
- systemd-tpm2-setup-early.service(8)
- systemd-tmpfiles(8)
- systemd.preset(5)
- run0(1)
- user.conf.d(5)
- systemd-pcrlock-machine-id.service(8)
- os-release(5)
- systemd-fsck-root.service(8)
- systemd-battery-check(8)
- systemd.automount(5)
- systemd-pcrfs-root.service(8)
- systemd.kill(5)
- systemd-pcrphase-sysinit.service(8)
- journalctl(1)
- 30-systemd-environment-d-generator(8)
- systemd.socket(5)
- systemd-rc-local-generator(8)
- systemd-sysext(8)
- systemd-fsck@.service(8)
- systemd.time(7)
- systemd-rfkill(8)
- systemd-ask-password-wall.path(8)
- machine-info(5)
- systemd-tpm2-generator(8)
- systemd-binfmt.service(8)
- org.freedesktop.login1(5)
- systemd-delta(1)
- systemd-tmpfiles-clean.service(8)
- systemd-ask-password-wall.service(8)
- user-runtime-dir@.service(5)
- systemd-cgls(1)
- smbios-type-11(7)
- systemd-ask-password-console.service(8)
- systemd.netdev(5)
- systemd-journald-dev-log.socket(8)
- systemd-storagetm(8)
- systemd-journald-audit.socket(8)
- systemd-tmpfiles-setup-dev.service(8)
- systemd-hybrid-sleep.service(8)
- systemd-analyze(1)
- systemd-environment-d-generator(8)
- systemd-hostnamed(8)
- systemd-hostnamed.service(8)
- systemd-pcrextend(8)
- systemd-tmpfiles-setup.service(8)
- systemd.pcrlock(5)
- systemd-tpm2-setup.service(8)
- systemd-suspend.service(8)
- systemd-mount(1)
- org.freedesktop.hostname1(5)
- extension-release(5)
- systemd-makefs@.service(8)
- iocost.conf(5)
- systemd-gpt-auto-generator(8)
- systemd-halt.service(8)
- systemd-modules-load.service(8)
- systemd-sysusers(8)
- systemd-user.conf(5)
- systemd-rfkill.service(8)
- systemd-volatile-root.service(8)
- systemd.scope(5)
- daemon(7)
- journald.conf(5)
apt-get install systemd
Available languages:
en zh_TW zh_CN deManual
FILE-HIERARCHY
NAME描 述
總 體 結 構
執 行 時 資 料
發 行 商 提 供 的 作 業 系 統 資 源
應 該 持 久 儲 存 的 易 變 系 統 資 料
虛 擬 檔 案 系 統
相 容 性 軟 連 線
家 目 錄
非 特 權 程 序 的 寫 許 可 權
檔 案 型 別
系 統 軟 體 包
使 用 者 軟 體 包
參 見
NOTES
跋
NAME
file-hierarchy - 檔 案 系 統 層 次 結 構 概 覽
描 述
對 於 使 用 systemd (1) 的 作 業 系 統 來 說 , 其 檔 案 系 統 層 次 結 構 遵 守 File System Hierarchy [1] 與 hier (7) 規 範 。 本 手 冊 僅 描 述 一 個 符 合 上 述 規 範 的 子 集 , 該 子 集 較 小 也 較 現 代 , 並 且 更 加 嚴 格 的 遵 守 上 述 規 範 。
許 多 本 文 所 描 述 的 路 徑 都 可 以 透 過 systemd-path (1) 工 具 來 查 詢 。
總 體 結 構
/
檔 案 系 統 的 根 。 通 常 是 可 寫 的 (也 可 以 是 隻 讀 的 ), 並 且 可 以 是 一 個 "tmpfs" 檔 案 系 統 。 除 非 是 隻 讀 的 , 否 則 不 與 其 他 主 機 共 享 。
/boot
啟 動 分 割 槽 。 在 UEFI系 統 上 通 常 是 "EFI System Partition", 參 見 systemd-gpt-auto-generator (8) 手 冊 。 該 目 錄 通 常 嚴 格 位 於 本 機 的 內 建 儲 存 上 , 並 且 應 該 是 隻 讀 的 (除 非 需 要 安 裝 核 心 或 引 導 管 理 器 )。 僅 當 作 業 系 統 執 行 在 物 理 機 或 者 虛 擬 硬 體 上 時 才 需 要 此 目 錄 , 因 為 這 種 情 況 下 必 須 使 用 引 導 管 理 器 。
/etc
特 定 於 該 作 業 系 統 的 配 置 。 該 目 錄 可 以 是 隻 讀 的 (也 可 以 是 可 讀 寫 的 )。 通 常 用 於 儲 存 作 業 系 統 發 行 商 預 設 的 配 置 檔 案 , 但 是 應 用 程 式 不 應 該 假 設 該 目 錄 中 必 然 存 在 某 個 配 置 檔 案 , 而 是 應 該 在 期 望 的 配 置 檔 案 不 存 在 的 情 況 下 , 回 退 到 預 設 設 定 。
/home
儲 存 普 通 使 用 者 的 家 目 錄 。 可 以 與 其 他 作 業 系 統 共 享 , 並 且 必 須 是 可 讀 寫 的 (不 能 是 隻 讀 的 )。 該 目 錄 必 須 僅 用 於 普 通 使 用 者 , 切 勿 用 於 系 統 使 用 者 (系 統 使 用 者 不 只 有 "root")。 該 目 錄 及 其 子 目 錄 可 以 在 啟 動 過 程 的 末 尾 才 變 得 可 用 , 甚 至 可 以 在 完 成 使 用 者 身 份 認 證 之 後 才 變 得 可 用 。 該 目 錄 可 以 位 於 功 能 受 限 的 網 路 檔 案 系 統 上 , 因 此 , 應 用 程 式 不 應 該 假 定 所 有 檔 案 系 統 API在 此 目 錄 上 都 可 用 。 應 用 程 式 不 應 該 直 接 引 用 該 目 錄 及 其 子 目 錄 , 而 是 應 該 透 過 針 對 每 個 使 用 者 設 定 的 $HOME 環 境 變 數 來 引 用 , 或 者 根 據 使 用 者 資 料 庫 中 的 "家 目 錄 "欄 位 的 值 來 引 用 。
/root
"root"使 用 者 的 家 目 錄 。 將 根 使 用 者 的 家 目 錄 放 到 /home 之 外 是 為 了 確 保 即 使 在 /home 目 錄 不 可 用 的 情 況 下 , "root"使 用 者 依 然 可 以 正 常 登 入 。
/srv
儲 存 常 規 伺 服 器 資 料 (載 荷 )的 目 錄 , 由 伺 服 器 管 理 員 管 理 。 其 中 的 子 目 錄 如 何 組 織 , 沒 有 明 確 的 規 範 。 該 目 錄 通 常 是 可 寫 的 , 並 且 可 以 與 其 他 作 業 系 統 共 享 。 該 目 錄 可 以 在 啟 動 過 程 的 末 尾 才 變 得 可 用 。
/tmp
存 放 小 臨 時 檔 案 的 目 錄 。 通 常 掛 載 為 一 個 "tmpfs" 檔 案 系 統 。 切 勿 在 此 目 錄 中 存 放 體 積 較 大 的 臨 時 檔 案 (應 該 使 用 /var/tmp 目 錄 )。 因 為 系 統 上 的 所 有 使 用 者 都 可 以 訪 問 該 目 錄 , 所 以 必 須 確 保 該 目 錄 僅 對 mkstemp (3), mkdtemp (3) 相 關 係 統 呼 叫 可 寫 。 該 目 錄 在 系 統 啟 動 過 程 中 會 被 清 空 。 並 且 , 如 果 其 中 的 某 些 檔 案 持 續 長 時 間 不 被 訪 問 , 通 常 也 會 被 自 動 刪 除 。 如 果 應 用 程 式 發 現 $TMPDIR 環 境 變 數 已 經 被 設 定 , 那 麼 應 該 使 用 $TMPDIR 環 境 變 數 的 設 定 , 而 不 應 該 直 接 使 用 /tmp 目 錄 (參 見 environ (7) 與 IEEE Std 1003.1 [2] )。
執 行 時 資 料
/run
一 個 用 於 存 放 系 統 軟 體 執 行 時 資 料 的 "tmpfs" 檔 案 系 統 。 該 目 錄 在 系 統 啟 動 過 程 中 會 被 清 空 。 該 目 錄 必 須 總 是 可 寫 的 , 但 是 通 常 又 應 該 僅 賦 予 特 權 應 用 寫 入 許 可 權 。
/run/log
執 行 時 系 統 日 誌 。 系 統 元 件 可 以 在 這 個 目 錄 中 存 放 私 有 日 誌 。 該 目 錄 必 須 總 是 可 寫 的 (即 使 /var/log 目 錄 尚 不 能 訪 問 )。
/run/user
針 對 每 個 使 用 者 的 執 行 時 目 錄 。 通 常 針 對 每 個 使 用 者 單 獨 掛 載 一 個 "tmpfs" 檔 案 系 統 例 項 。 該 目 錄 必 須 總 是 可 寫 的 , 並 且 在 系 統 啟 動 過 程 中 以 及 對 應 的 使 用 者 登 出 後 會 被 自 動 清 空 。 應 用 程 式 不 應 該 直 接 引 用 該 目 錄 , 而 是 應 該 透 過 針 對 每 個 使 用 者 設 定 的 $XDG_RUNTIME_DIR 環 境 變 數 來 引 用 。 詳 見 XDG Base Directory Specification [3]
發 行 商 提 供 的 作 業 系 統 資 源
/usr
發 行 商 提 供 的 作 業 系 統 資 源 。 通 常 應 該 是 隻 讀 的 (但 非 必 須 是 隻 讀 )。 可 以 與 其 他 主 機 共 享 。 系 統 管 理 員 不 應 該 修 改 此 目 錄 中 的 內 容 , 除 非 需 要 安 裝 或 解 除 安 裝 發 行 商 提 供 的 軟 體 包 。
/usr/bin
存 放 應 當 出 現 在 $PATH 搜 尋 路 徑 中 的 使 用 者 命 令 (可 執 行 檔 案 )。 建 議 僅 將 命 令 列 工 具 放 到 此 目 錄 中 , 而 例 如 守 護 程 序 之 類 的 非 命 令 列 工 具 , 則 應 該 放 到 /usr/lib 下 的 子 目 錄 中 。
/usr/include
系 統 庫 的 C 與 C++ API 標 頭 檔 案 目 錄 。
/usr/lib
存 放 通 用 於 所 有 體 系 結 構 的 、 靜 態 的 發 行 商 專 屬 資 料 。 這 包 括 軟 體 包 內 部 使 用 的 可 執 行 檔 案 、 以 及 例 如 守 護 程 序 之 類 的 非 命 令 列 工 具 。 這 些 二 進 位 制 檔 案 可 用 於 該 作 業 系 統 支 援 的 所 有 體 系 結 構 。 不 要 在 此 目 錄 中 放 置 公 共 庫 , 而 應 該 將 它 們 放 到 $libdir 目 錄 中 (參 見 下 文 )。
/usr/lib/ arch-id
存 放 動 態 連 結 庫 , 又 被 稱 為 $libdir 目 錄 。 arch-id 的 具 體 名 稱 遵 守 Multiarch Architecture Specifiers (Tuples) [4] 列 表 的 規 範 。 傳 統 上 , $libdir 通 常 是 /usr/lib 與 /usr/lib64 目 錄 。 該 目 錄 不 應 該 用 於 存 放 特 定 於 某 個 軟 體 的 專 屬 資 料 , 除 非 這 些 資 料 是 專 屬 於 特 定 體 系 結 構 的 。 可 以 使 用 下 面 的 命 令 查 詢 用 於 該 系 統 的 首 選 體 系 結 構 的 $libdir 的 值 :
# systemd-path system-library-arch
/usr/share
在 多 個 軟 體 包 之 間 共 享 的 資 源 , 例 如 文 件 、 手 冊 、 時 區 資 料 、 字 型 等 資 源 。 此 目 錄 下 的 子 目 錄 結 構 及 檔 案 格 式 , 取 決 於 確 保 軟 體 之 間 正 常 相 互 操 作 的 各 種 規 範 。
/usr/share/doc
作 業 系 統 以 及 各 種 軟 體 包 的 文 件 。
/usr/share/factory/etc
發 行 商 提 供 的 預 設 配 置 檔 案 倉 庫 。 該 目 錄 中 應 該 放 置 發 行 商 提 供 的 、 所 有 可 能 放 入 /etc 目 錄 的 配 置 檔 案 的 原 始 預 設 檔 案 。 這 個 目 錄 主 要 是 為 了 方 便 恢 復 預 設 設 定 以 及 對 比 當 前 配 置 與 預 設 配 置 的 不 同 。
/usr/share/factory/var
與 /usr/share/factory/etc 類 似 , 用 於 存 放 發 行 商 提 供 的 /var 目 錄 內 容 的 原 始 預 設 檔 案 。
應 該 持 久 儲 存 的 易 變 系 統 資 料
/var
應 該 持 久 儲 存 的 易 變 系 統 資 料 。 該 目 錄 必 須 可 寫 。 該 目 錄 可 以 預 先 填 充 發 行 商 預 設 的 資 料 , 但 是 應 用 程 式 可 以 自 行 建 立 所 需 的 檔 案 和 目 錄 。 強 烈 推 薦 (但 非 必 須 )持 久 儲 存 該 目 錄 中 的 資 料 , 系 統 必 須 在 該 目 錄 為 空 時 依 然 能 夠 正 常 啟 動 , 以 支 援 臨 時 執 行 的 系 統 。 該 目 錄 可 以 在 啟 動 過 程 的 末 尾 才 變 得 可 用 , 因 此 那 些 在 系 統 啟 動 早 期 執 行 的 元 件 不 應 該 依 賴 於 此 目 錄 的 存 在 。
/var/cache
應 該 持 久 儲 存 的 系 統 快 取 。 系 統 元 件 可 以 在 該 目 錄 中 放 置 非 關 鍵 的 快 取 。 清 空 該 目 錄 必 須 不 影 響 應 用 的 正 常 工 作 (但 應 用 可 以 花 費 額 外 的 時 間 重 建 這 些 快 取 )。
/var/lib
應 該 持 久 儲 存 的 系 統 資 料 。 系 統 元 件 可 以 在 該 目 錄 中 放 置 專 屬 的 資 料 。
/var/log
應 該 持 久 儲 存 的 系 統 日 誌 。 系 統 元 件 可 以 在 該 目 錄 中 放 置 專 屬 的 日 誌 。 不 過 , 推 薦 的 方 式 是 透 過 syslog (3) 與 sd_journal_print (3) 介 面 記 錄 日 誌 。
/var/spool
應 該 持 久 儲 存 的 系 統 佇 列 。 例 如 郵 件 佇 列 或 列 印 佇 列 。
/var/tmp
應 該 持 久 儲 存 的 臨 時 檔 案 (通 常 體 積 也 比 較 大 )。 此 目 錄 通 常 位 於 持 久 儲 存 裝 置 上 , 並 且 可 以 儲 存 較 大 的 臨 時 檔 案 。 相 比 較 而 言 , /tmp 一 般 位 於 記 憶 體 中 , 並 且 僅 用 於 儲 存 較 小 的 臨 時 檔 案 。 該 目 錄 在 系 統 啟 動 過 程 中 一 般 不 會 被 清 空 , 但 是 , 如 果 其 中 的 某 些 檔 案 持 續 長 時 間 不 被 訪 問 , 通 常 也 會 被 自 動 刪 除 。 因 為 系 統 上 的 所 有 使 用 者 都 可 以 訪 問 該 目 錄 , 所 以 必 須 確 保 該 目 錄 僅 對 mkstemp (3), mkdtemp (3) 相 關 係 統 呼 叫 可 寫 。 如 果 應 用 程 式 發 現 $TMPDIR 環 境 變 數 已 經 被 設 定 , 那 麼 應 該 使 用 $TMPDIR 環 境 變 數 的 設 定 , 而 不 應 該 直 接 使 用 /var/tmp 目 錄 (參 見 environ (7))。
虛 擬 檔 案 系 統
/dev
裝 置 節 點 的 根 目 錄 。 通 常 被 掛 載 為 一 個 "devtmpfs" 檔 案 系 統 例 項 (但 在 沙 盒 或 容 器 中 可 能 是 其 他 型 別 )。 該 目 錄 中 的 內 容 由 核 心 與 systemd-udevd.service (8) 共 同 管 理 , 其 他 任 何 元 件 都 不 應 該 修 改 此 目 錄 中 的 內 容 。 可 以 在 該 目 錄 的 子 目 錄 中 再 掛 載 其 他 特 定 用 途 的 虛 擬 檔 案 系 統 。
/dev/shm
透 過 shm_open (3) 建 立 的 POSIX共 享 記 憶 體 。 因 為 它 其 實 是 一 個 "tmpfs" 檔 案 系 統 , 所 以 在 系 統 啟 動 過 程 中 會 被 清 空 。 因 為 系 統 上 的 所 有 使 用 者 都 可 以 讀 寫 該 目 錄 , 所 以 必 須 注 意 避 免 檔 名 衝 突 以 及 安 全 漏 洞 (也 就 是 注 意 許 可 權 設 定 )。 對 於 普 通 使 用 者 , 當 其 退 出 登 入 時 , 其 在 該 目 錄 下 建 立 的 檔 案 也 會 被 刪 除 。 通 常 , 在 /run 目 錄 (針 對 系 統 程 序 ) 或 $XDG_RUNTIME_DIR 目 錄 (針 對 使 用 者 程 序 )中 使 用 記 憶 體 對 映 檔 案 , 是 比 使 用 POSIX共 享 記 憶 體 更 好 的 解 決 方 案 。 因 為 這 些 目 錄 不 是 全 域 性 可 寫 的 , 所 以 不 存 在 檔 名 衝 突 以 及 安 全 漏 洞 的 問 題 。
/proc
顯 示 程 序 資 訊 以 及 其 他 功 能 的 虛 擬 檔 案 系 統 。 此 檔 案 系 統 主 要 用 作 核 心 與 使 用 者 互 動 的 介 面 。 詳 見 proc (5) 手 冊 。 可 以 在 該 目 錄 的 子 目 錄 中 再 掛 載 其 他 特 定 用 途 的 虛 擬 檔 案 系 統 。
/proc/sys
調 整 核 心 各 項 引 數 的 一 個 介 面 。 主 要 透 過 sysctl.d (5) 中 的 配 置 檔 案 進 行 設 定 。 但 在 沙 盒 或 容 器 中 該 目 錄 通 常 以 只 讀 方 式 掛 載 (也 就 是 禁 止 修 改 核 心 引 數 )。
/sys
顯 示 所 有 已 發 現 裝 置 以 及 其 他 功 能 的 虛 擬 檔 案 系 統 。 此 檔 案 系 統 主 要 用 作 核 心 與 使 用 者 互 動 的 介 面 。 在 沙 盒 或 容 器 中 該 目 錄 通 常 以 只 讀 方 式 掛 載 。 可 以 在 該 目 錄 的 子 目 錄 中 再 掛 載 其 他 特 定 用 途 的 虛 擬 檔 案 系 統 。
相 容 性 軟 連 線
/bin, /sbin, /usr/sbin
這 三 個 軟 連 線 都 指 向 /usr/bin 以 確 保 對 傳 統 路 徑 的 相 容 。
/lib
這 個 軟 連 線 指 向 /usr/lib 以 確 保 對 傳 統 路 徑 的 相 容 。
/lib64
在 64位 系 統 上 , 這 個 軟 連 線 指 向 $libdir 以 確 保 對 傳 統 路 徑 的 相 容 。 此 軟 連 線 僅 存 在 於 動 態 載 入 器 位 於 此 路 徑 的 系 統 架 構 上 。
/var/run
這 個 軟 連 線 指 向 /run 以 確 保 對 傳 統 路 徑 的 相 容 。
家 目 錄
使 用 者 應 用 如 果 想 要 在 使 用 者 的 家 目 錄 中 儲 存 檔 案 或 目 錄 , 那 麼 應 該 遵 守 下 面 的 規 範 。 注 意 , 下 面 的 某 些 目 錄 雖 然 比 較 脆 弱 , 但 是 已 經 被 XDG Base Directory Specification [3] 標 準 化 了 。 其 他 為 高 層 次 使 用 者 資 源 定 義 的 位 置 參 見 xdg-user-dirs [5] 文 件 。
˜/.cache
應 該 持 久 儲 存 的 使 用 者 快 取 。 應 用 可 以 在 該 目 錄 中 放 置 非 關 鍵 的 使 用 者 快 取 。 清 空 該 目 錄 中 的 快 取 必 須 不 影 響 應 用 的 正 常 工 作 (但 應 用 可 以 花 費 額 外 的 時 間 重 建 這 些 快 取 )。 如 果 應 用 程 式 發 現 $XDG_CACHE_HOME 環 境 變 數 已 經 被 設 定 , 那 麼 應 該 使 用 $XDG_CACHE_HOME 環 境 變 數 的 設 定 , 而 不 應 該 直 接 使 用 ˜/.cache 目 錄 。
˜/.config
應 該 持 久 儲 存 的 使 用 者 配 置 與 狀 態 。 當 新 使 用 者 剛 被 建 立 時 , 該 目 錄 應 該 初 始 為 空 或 根 本 不 存 在 。 如 果 期 望 的 配 置 檔 案 不 存 在 於 該 目 錄 中 , 那 麼 應 用 程 式 應 該 回 退 到 預 設 設 定 , 而 不 應 該 罷 工 。 如 果 應 用 程 式 發 現 $XDG_CONFIG_HOME 環 境 變 數 已 經 被 設 定 , 那 麼 應 該 使 用 $XDG_CONFIG_HOME 環 境 變 數 的 設 定 , 而 不 應 該 直 接 使 用 ˜/.config 目 錄 。
˜/.local/bin
存 放 應 當 出 現 在 使 用 者 專 屬 的 $PATH 搜 尋 路 徑 中 的 使 用 者 命 令 (可 執 行 檔 案 )。 建 議 僅 將 命 令 列 工 具 放 到 此 目 錄 中 , 而 例 如 守 護 程 序 之 類 的 非 命 令 列 工 具 , 則 應 該 放 到 ˜/.local/lib 下 的 子 目 錄 中 。 注 意 , 當 在 此 目 錄 中 存 放 特 定 於 體 系 結 構 的 可 執 行 檔 案 時 , 可 能 會 因 為 與 其 他 不 同 體 系 結 構 的 系 統 共 享 家 目 錄 而 出 現 故 障 。
˜/.local/lib
存 放 通 用 於 所 有 體 系 結 構 的 、 靜 態 的 使 用 者 專 屬 資 料 。 這 包 括 軟 體 包 內 部 使 用 的 可 執 行 檔 案 、 以 及 例 如 守 護 程 序 之 類 的 非 命 令 列 工 具 。 這 些 二 進 位 制 檔 案 可 用 於 該 作 業 系 統 支 援 的 所 有 體 系 結 構 。 不 要 在 此 目 錄 中 放 置 公 共 庫 , 而 應 該 將 它 們 放 到 ˜/.local/lib/ arch-id 目 錄 中 (參 見 下 文 )。
˜/.local/lib/ arch-id
存 放 專 屬 於 特 定 體 系 結 構 的 動 態 連 結 庫 。 arch-id 的 具 體 名 稱 遵 守 Multiarch Architecture Specifiers (Tuples) [4] 列 表 的 規 範 。
˜/.local/share
在 多 個 軟 體 包 之 間 共 享 的 資 源 , 例 如 圖 示 、 字 型 等 資 源 。 此 目 錄 下 的 子 目 錄 結 構 及 檔 案 格 式 , 取 決 於 確 保 軟 體 之 間 正 常 相 互 操 作 的 各 種 規 範 。 如 果 應 用 程 式 發 現 $XDG_DATA_HOME 環 境 變 數 已 經 被 設 定 , 那 麼 應 該 使 用 $XDG_DATA_HOME 環 境 變 數 的 設 定 , 而 不 應 該 直 接 使 用 ˜/.local/share 目 錄 。
非 特 權 程 序 的 寫 許 可 權
非 特 權 程 序 通 常 對 大 多 數 目 錄 都 沒 有 寫 許 可 權 。
但 對 於 普 通 使 用 者 的 非 特 權 程 序 來 說 , 可 以 寫 入 /tmp, /var/tmp, /dev/shm, $HOME (通 常 位 於 /home 下 ), $XDG_RUNTIME_DIR (通 常 位 於 /run/user 下 ) 目 錄 。
而 對 於 系 統 的 非 特 權 程 序 來 說 , 則 僅 可 以 寫 入 /tmp, /var/tmp, /dev/shm 目 錄 。 如 果 系 統 的 非 特 權 程 序 需 要 在 /var 或 /run 目 錄 中 建 立 一 個 專 屬 的 、 可 寫 入 的 目 錄 , 那 麼 可 以 在 守 護 程 序 丟 棄 特 權 之 前 先 建 立 該 目 錄 , 或 者 透 過 tmpfiles.d (5) 在 系 統 啟 動 時 先 建 立 該 目 錄 , 或 者 透 過 服 務 單 元 檔 案 中 的 RuntimeDirectory= 指 令 (詳 見 systemd.unit (5) 手 冊 )建 立 該 目 錄 。
檔 案 型 別
Unix檔 案 系 統 支 援 不 同 的 檔 案 節 點 型 別 : 普 通 檔 案 、 目 錄 、 軟 連 線 、 字 元 裝 置 、 塊 裝 置 、 套 接 字 (socket)、 管 道 (FIFO)。
強 烈 建 議 僅 將 裝 置 檔 案 放 置 在 /dev 目 錄 中 、 僅 將 套 接 字 (socket)與 管 道 (FIFO)檔 案 放 置 在 /run 目 錄 中 。 而 普 通 檔 案 、 目 錄 、 軟 連 線 則 可 以 放 置 在 所 有 目 錄 中 。
系 統 軟 體 包
系 統 軟 體 包 的 開 發 者 應 該 嚴 格 遵 守 下 面 的 檔 案 佈 局 規 範 。 下 面 列 出 了 發 行 商 提 供 的 系 統 軟 體 包 中 各 類 檔 案 的 推 薦 位 置 :
Table 1. 系 統 軟 體 包 中 靜 態 檔 案 的 推 薦 位 置
發 行 商 提 供 的 其 他 靜 態 資 源 應 該 存 放 在 /usr/share 目 錄 下 , 具 體 的 存 放 位 置 應 該 遵 守 其 他 的 相 關 規 範 。
存 放 軟 體 包 執 行 時 資 料 以 及 配 置 檔 案 的 相 關 目 錄 如 下 :
Table 2. 系 統 軟 體 包 的 執 行 時 資 料 以 及 配 置 檔 案 的 推 薦 位 置
使 用 者 軟 體 包
對 於 專 屬 於 特 定 使 用 者 的 軟 體 包 , 其 存 貯 在 使 用 者 家 目 錄 中 的 檔 案 必 須 嚴 格 遵 守 下 面 的 檔 案 佈 局 規 範 。 注 意 , 當 安 裝 屬 於 系 統 範 圍 的 軟 體 包 時 , 應 該 遵 守 前 面 "系 統 軟 體 包 "小 節 的 佈 局 規 範 。 下 面 列 出 了 當 使 用 者 在 其 家 目 錄 中 安 裝 專 屬 軟 體 包 時 , 由 發 行 商 提 供 的 各 種 型 別 的 檔 案 在 使 用 者 家 目 錄 中 應 該 存 放 的 位 置 :
Table 3. 使 用 者 軟 體 包 中 靜 態 檔 案 的 推 薦 位 置
發 行 商 提 供 的 其 他 靜 態 資 源 應 該 存 放 在 ˜/.local/share 目 錄 下 , 具 體 的 存 放 位 置 應 該 遵 守 其 他 的 相 關 規 範 。
存 放 軟 體 包 執 行 時 資 料 以 及 配 置 檔 案 的 相 關 目 錄 如 下 :
Table 4. 使 用 者 軟 體 包 的 執 行 時 資 料 以 及 配 置 檔 案 的 推 薦 位 置
參 見
systemd (1), hier (7), systemd-path (1), systemd-gpt-auto-generator (8), sysctl.d (5), tmpfiles.d (5), pkg-config (1), systemd.unit (5)
NOTES
|
1. |
File System Hierarchy |
http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html
|
2. |
IEEE Std 1003.1 |
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03
|
3. |
XDG Base Directory Specification |
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
4. |
Multiarch Architecture Specifiers (Tuples) |
https://wiki.debian.org/Multiarch/Tuples
|
5. |
xdg-user-dirs |
http://www.freedesktop.org/wiki/Software/xdg-user-dirs/
跋
本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。
翻
譯 人 員 : 金 步
國
金 步 國 作 品 集
: http://www.jinbuguo.com
中 文 man 手 冊 頁 計
劃 :
https://github.com/man-pages-zh/manpages-zh