'\" t .TH "FILE\-HIERARCHY" "7" "" "systemd 231" "file-hierarchy" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" file-hierarchy \- 檔案系統層次結構概覽 .SH "描述" .PP 對於使用 \fBsystemd\fR(1) 的作業系統來說, 其檔案系統層次結構遵守 \m[blue]\fBFile System Hierarchy\fR\m[]\&\s-2\u[1]\d\s+2 與 \fBhier\fR(7) 規範。 本手冊僅描述一個符合上述規範的子集, 該子集較小也較現代, 並且更加嚴格的遵守上述規範。 .PP 許多本文所描述的路徑都可以透過 \fBsystemd-path\fR(1) 工具來查詢。 .SH "總體結構" .PP / .RS 4 檔案系統的根。 通常是可寫的(也可以是隻讀的), 並且可以是一個 "tmpfs" 檔案系統。 除非是隻讀的,否則不與其他主機共享。 .RE .PP /boot .RS 4 啟動分割槽。 在UEFI系統上通常是"EFI System Partition", 參見 \fBsystemd-gpt-auto-generator\fR(8) 手冊。 該目錄通常嚴格位於本機的內建儲存上, 並且應該是隻讀的(除非需要安裝核心或引導管理器)。 僅當作業系統執行在物理機或者虛擬硬體上時才需要此目錄, 因為這種情況下必須使用引導管理器。 .RE .PP /etc .RS 4 特定於該作業系統的配置。 該目錄可以是隻讀的(也可以是可讀寫的)。 通常用於儲存作業系統發行商預設的配置檔案, 但是應用程式不應該假設該目錄中必然存在某個配置檔案, 而是應該在期望的配置檔案不存在的情況下, 回退到預設設定。 .RE .PP /home .RS 4 儲存普通使用者的家目錄。 可以與其他作業系統共享, 並且必須是可讀寫的(不能是隻讀的)。 該目錄必須僅用於普通使用者, 切勿用於系統使用者(系統使用者不只有"root")。 該目錄及其子目錄可以在啟動過程的末尾才變得可用, 甚至可以在完成使用者身份認證之後才變得可用。 該目錄可以位於功能受限的網路檔案系統上, 因此,應用程式不應該假定所有檔案系統API在此目錄上都可用。 應用程式不應該直接引用該目錄及其子目錄, 而是應該透過針對每個使用者設定的 \fI$HOME\fR 環境變數來引用, 或者根據使用者資料庫中的"家目錄"欄位的值來引用。 .RE .PP /root .RS 4 "root"使用者的家目錄。 將根使用者的家目錄放到 /home 之外是為了確保即使在 /home 目錄不可用的情況下, "root"使用者依然可以正常登入。 .RE .PP /srv .RS 4 儲存常規伺服器資料(載荷)的目錄,由伺服器管理員管理。 其中的子目錄如何組織,沒有明確的規範。 該目錄通常是可寫的,並且可以與其他作業系統共享。 該目錄可以在啟動過程的末尾才變得可用。 .RE .PP /tmp .RS 4 存放小臨時檔案的目錄。 通常掛載為一個 "tmpfs" 檔案系統。 切勿在此目錄中存放體積較大的臨時檔案(應該使用 /var/tmp 目錄)。 因為系統上的所有使用者都可以訪問該目錄, 所以必須確保該目錄僅對 \fBmkstemp\fR(3), \fBmkdtemp\fR(3) 相關係統呼叫可寫。 該目錄在系統啟動過程中會被清空。 並且,如果其中的某些檔案持續長時間不被訪問,通常也會被自動刪除。 如果應用程式發現 \fI$TMPDIR\fR 環境變數已經被設定, 那麼應該使用 \fI$TMPDIR\fR 環境變數的設定, 而不應該直接使用 /tmp 目錄(參見 \fBenviron\fR(7) 與 \m[blue]\fBIEEE Std 1003\&.1\fR\m[]\&\s-2\u[2]\d\s+2 )。 .RE .SH "執行時資料" .PP /run .RS 4 一個用於存放系統軟體執行時資料的 "tmpfs" 檔案系統。 該目錄在系統啟動過程中會被清空。 該目錄必須總是可寫的, 但是通常又應該僅賦予特權應用寫入許可權。 .RE .PP /run/log .RS 4 執行時系統日誌。 系統元件可以在這個目錄中存放私有日誌。 該目錄必須總是可寫的(即使 /var/log 目錄尚不能訪問)。 .RE .PP /run/user .RS 4 針對每個使用者的執行時目錄。 通常針對每個使用者單獨掛載一個 "tmpfs" 檔案系統例項。 該目錄必須總是可寫的, 並且在系統啟動過程中以及對應的使用者登出後會被自動清空。 應用程式不應該直接引用該目錄,而是應該透過針對每個使用者設定的 \fI$XDG_RUNTIME_DIR\fR 環境變數來引用。 詳見 \m[blue]\fBXDG Base Directory Specification\fR\m[]\&\s-2\u[3]\d\s+2 .RE .SH "發行商提供的作業系統資源" .PP /usr .RS 4 發行商提供的作業系統資源。 通常應該是隻讀的(但非必須是隻讀)。可以與其他主機共享。 系統管理員不應該修改此目錄中的內容, 除非需要安裝或解除安裝發行商提供的軟體包。 .RE .PP /usr/bin .RS 4 存放應當出現在 \fI$PATH\fR 搜尋路徑中的使用者命令(可執行檔案)。 建議僅將命令列工具放到此目錄中, 而例如守護程序之類的非命令列工具, 則應該放到 /usr/lib 下的子目錄中。 .RE .PP /usr/include .RS 4 系統庫的 C 與 C++ API 標頭檔案目錄。 .RE .PP /usr/lib .RS 4 存放通用於所有體系結構的、靜態的發行商專屬資料。 這包括軟體包內部使用的可執行檔案、 以及例如守護程序之類的非命令列工具。 這些二進位制檔案可用於該作業系統支援的所有體系結構。 不要在此目錄中放置公共庫, 而應該將它們放到 \fI$libdir\fR 目錄中(參見下文)。 .RE .PP /usr/lib/\fIarch\-id\fR .RS 4 存放動態連結庫, 又被稱為 \fI$libdir\fR 目錄。 \fIarch\-id\fR 的具體名稱遵守 \m[blue]\fBMultiarch Architecture Specifiers (Tuples)\fR\m[]\&\s-2\u[4]\d\s+2 列表的規範。 傳統上,\fI$libdir\fR 通常是 /usr/lib 與 /usr/lib64 目錄。 該目錄不應該用於存放特定於某個軟體的專屬資料, 除非這些資料是專屬於特定體系結構的。 可以使用下面的命令查詢用於該系統的首選體系結構的 \fI$libdir\fR 的值: .sp .if n \{\ .RS 4 .\} .nf # systemd\-path system\-library\-arch .fi .if n \{\ .RE .\} .RE .PP /usr/share .RS 4 在多個軟體包之間共享的資源, 例如文件、手冊、時區資料、字型等資源。 此目錄下的子目錄結構及檔案格式, 取決於確保軟體之間正常相互操作的各種規範。 .RE .PP /usr/share/doc .RS 4 作業系統以及各種軟體包的文件。 .RE .PP /usr/share/factory/etc .RS 4 發行商提供的預設配置檔案倉庫。 該目錄中應該放置發行商提供的、 所有可能放入 /etc 目錄的配置檔案的原始預設檔案。 這個目錄主要是為了方便恢復預設設定 以及對比當前配置與預設配置的不同。 .RE .PP /usr/share/factory/var .RS 4 與 /usr/share/factory/etc 類似, 用於存放發行商提供的 /var 目錄內容的原始預設檔案。 .RE .SH "應該持久儲存的易變系統資料" .PP /var .RS 4 應該持久儲存的易變系統資料。 該目錄必須可寫。 該目錄可以預先填充發行商預設的資料, 但是應用程式可以自行建立所需的檔案和目錄。 強烈推薦(但非必須)持久儲存該目錄中的資料, 系統必須在該目錄為空時依然能夠正常啟動, 以支援臨時執行的系統。 該目錄可以在啟動過程的末尾才變得可用, 因此那些在系統啟動早期執行的元件不應該依賴於此目錄的存在。 .RE .PP /var/cache .RS 4 應該持久儲存的系統快取。 系統元件可以在該目錄中放置非關鍵的快取。 清空該目錄必須不影響應用的正常工作 (但應用可以花費額外的時間重建這些快取)。 .RE .PP /var/lib .RS 4 應該持久儲存的系統資料。 系統元件可以在該目錄中放置專屬的資料。 .RE .PP /var/log .RS 4 應該持久儲存的系統日誌。 系統元件可以在該目錄中放置專屬的日誌。 不過,推薦的方式是透過 \fBsyslog\fR(3) 與 \fBsd_journal_print\fR(3) 介面記錄日誌。 .RE .PP /var/spool .RS 4 應該持久儲存的系統佇列。 例如郵件佇列或列印佇列。 .RE .PP /var/tmp .RS 4 應該持久儲存的臨時檔案(通常體積也比較大)。 此目錄通常位於持久儲存裝置上,並且可以儲存較大的臨時檔案。 相比較而言,/tmp 一般位於記憶體中, 並且僅用於儲存較小的臨時檔案。 該目錄在系統啟動過程中一般不會被清空, 但是,如果其中的某些檔案持續長時間不被訪問,通常也會被自動刪除。 因為系統上的所有使用者都可以訪問該目錄, 所以必須確保該目錄僅對 \fBmkstemp\fR(3), \fBmkdtemp\fR(3) 相關係統呼叫可寫。 如果應用程式發現 \fI$TMPDIR\fR 環境變數已經被設定, 那麼應該使用 \fI$TMPDIR\fR 環境變數的設定, 而不應該直接使用 /var/tmp 目錄(參見 \fBenviron\fR(7))。 .RE .SH "虛擬檔案系統" .PP /dev .RS 4 裝置節點的根目錄。 通常被掛載為一個 "devtmpfs" 檔案系統例項 (但在沙盒或容器中可能是其他型別)。 該目錄中的內容由核心與 \fBsystemd-udevd.service\fR(8) 共同管理,其他任何元件都不應該修改此目錄中的內容。 可以在該目錄的子目錄中再掛載其他特定用途的虛擬檔案系統。 .RE .PP /dev/shm .RS 4 透過 \fBshm_open\fR(3) 建立的POSIX共享記憶體。 因為它其實是一個 "tmpfs" 檔案系統, 所以在系統啟動過程中會被清空。 因為系統上的所有使用者都可以讀寫該目錄, 所以必須注意避免檔名衝突以及安全漏洞(也就是注意許可權設定)。 對於普通使用者,當其退出登入時,其在該目錄下建立的檔案也會被刪除。 通常,在 /run 目錄(針對系統程序) 或 \fI$XDG_RUNTIME_DIR\fR 目錄(針對使用者程序)中使用記憶體對映檔案, 是比使用POSIX共享記憶體更好的解決方案。 因為這些目錄不是全域性可寫的, 所以不存在檔名衝突以及安全漏洞的問題。 .RE .PP /proc .RS 4 顯示程序資訊以及其他功能的虛擬檔案系統。 此檔案系統主要用作核心與使用者互動的介面。 詳見 \fBproc\fR(5) 手冊。 可以在該目錄的子目錄中再掛載其他特定用途的虛擬檔案系統。 .RE .PP /proc/sys .RS 4 調整核心各項引數的一個介面。 主要透過 \fBsysctl.d\fR(5) 中的配置檔案進行設定。 但在沙盒或容器中該目錄通常以只讀方式掛載(也就是禁止修改核心引數)。 .RE .PP /sys .RS 4 顯示所有已發現裝置以及其他功能的虛擬檔案系統。 此檔案系統主要用作核心與使用者互動的介面。 在沙盒或容器中該目錄通常以只讀方式掛載。 可以在該目錄的子目錄中 再掛載其他特定用途的虛擬檔案系統。 .RE .SH "相容性軟連線" .PP /bin, /sbin, /usr/sbin .RS 4 這三個軟連線都指向 /usr/bin 以確保對傳統路徑的相容。 .RE .PP /lib .RS 4 這個軟連線指向 /usr/lib 以確保對傳統路徑的相容。 .RE .PP /lib64 .RS 4 在64位系統上, 這個軟連線指向 \fI$libdir\fR 以確保對傳統路徑的相容。 此軟連線僅存在於動態載入器位於此路徑的系統架構上。 .RE .PP /var/run .RS 4 這個軟連線指向 /run 以確保對傳統路徑的相容。 .RE .SH "家目錄" .PP 使用者應用如果想要在使用者的家目錄中儲存檔案或目錄,那麼應該遵守下面的規範。 注意,下面的某些目錄雖然比較脆弱, 但是已經被 \m[blue]\fBXDG Base Directory Specification\fR\m[]\&\s-2\u[3]\d\s+2 標準化了。 其他為高層次使用者資源定義的位置參見 \m[blue]\fBxdg\-user\-dirs\fR\m[]\&\s-2\u[5]\d\s+2 文件。 .PP ~/\&.cache .RS 4 應該持久儲存的使用者快取。 應用可以在該目錄中放置非關鍵的使用者快取。 清空該目錄中的快取必須不影響應用的正常工作 (但應用可以花費額外的時間重建這些快取)。 如果應用程式發現 \fI$XDG_CACHE_HOME\fR 環境變數已經被設定, 那麼應該使用 \fI$XDG_CACHE_HOME\fR 環境變數的設定, 而不應該直接使用 ~/\&.cache 目錄。 .RE .PP ~/\&.config .RS 4 應該持久儲存的使用者配置與狀態。 當新使用者剛被建立時,該目錄應該初始為空或根本不存在。 如果期望的配置檔案不存在於該目錄中, 那麼應用程式應該回退到預設設定,而不應該罷工。 如果應用程式發現 \fI$XDG_CONFIG_HOME\fR 環境變數已經被設定, 那麼應該使用 \fI$XDG_CONFIG_HOME\fR 環境變數的設定, 而不應該直接使用 ~/\&.config 目錄。 .RE .PP ~/\&.local/bin .RS 4 存放應當出現在使用者專屬的 \fI$PATH\fR 搜尋路徑中的使用者命令(可執行檔案)。 建議僅將命令列工具放到此目錄中, 而例如守護程序之類的非命令列工具, 則應該放到 ~/\&.local/lib 下的子目錄中。 注意,當在此目錄中存放特定於體系結構的可執行檔案時, 可能會因為與其他不同體系結構的系統共享家目錄而出現故障。 .RE .PP ~/\&.local/lib .RS 4 存放通用於所有體系結構的、靜態的使用者專屬資料。這包括軟體包內部使用的可執行檔案、以及例如守護程序之類的非命令列工具。這些二進位制檔案可用於該作業系統支援的所有體系結構。 不要在此目錄中放置公共庫,而應該將它們放到 ~/\&.local/lib/\fIarch\-id\fR 目錄中(參見下文)。 .RE .PP ~/\&.local/lib/\fIarch\-id\fR .RS 4 存放專屬於特定體系結構的動態連結庫。 \fIarch\-id\fR 的具體名稱遵守 \m[blue]\fBMultiarch Architecture Specifiers (Tuples)\fR\m[]\&\s-2\u[4]\d\s+2 列表的規範。 .RE .PP ~/\&.local/share .RS 4 在多個軟體包之間共享的資源,例如圖示、字型等資源。 此目錄下的子目錄結構及檔案格式, 取決於確保軟體之間正常相互操作的各種規範。 如果應用程式發現 \fI$XDG_DATA_HOME\fR 環境變數已經被設定, 那麼應該使用 \fI$XDG_DATA_HOME\fR 環境變數的設定, 而不應該直接使用 ~/\&.local/share 目錄。 .RE .SH "非特權程序的寫許可權" .PP 非特權程序通常對大多數目錄都沒有寫許可權。 .PP 但對於普通使用者的非特權程序來說,可以寫入 /tmp, /var/tmp, /dev/shm, \fI$HOME\fR (通常位於 /home 下), \fI$XDG_RUNTIME_DIR\fR (通常位於 /run/user 下) 目錄。 .PP 而對於系統的非特權程序來說,則僅可以寫入 /tmp, /var/tmp, /dev/shm 目錄。 如果系統的非特權程序需要在 /var 或 /run 目錄中建立一個專屬的、可寫入的目錄, 那麼可以在守護程序丟棄特權之前先建立該目錄,或者透過 \fBtmpfiles.d\fR(5) 在系統啟動時先建立該目錄, 或者透過服務單元檔案中的 \fIRuntimeDirectory=\fR 指令(詳見 \fBsystemd.unit\fR(5) 手冊)建立該目錄。 .SH "檔案型別" .PP Unix檔案系統支援不同的檔案節點型別: 普通檔案、目錄、軟連線、字元裝置、塊裝置、 套接字(socket)、管道(FIFO)。 .PP 強烈建議僅將裝置檔案放置在 /dev 目錄中、 僅將套接字(socket)與管道(FIFO)檔案放置在 /run 目錄中。 而普通檔案、目錄、軟連線則可以放置在所有目錄中。 .SH "系統軟體包" .PP 系統軟體包的開發者應該嚴格遵守下面的檔案佈局規範。 下面列出了發行商提供的系統軟體包中各類檔案的推薦位置: .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .B Table\ \&1.\ \&系統軟體包中靜態檔案的推薦位置 .TS allbox tab(:); lB lB. T{ 目錄 T}:T{ 用途 T} .T& l l l l l l l l l l. T{ /usr/bin T}:T{ 應該出現在 \fI$PATH\fR 搜尋路徑中且與體系結構無關的可執行檔案。不要將軟體包內部使用的可執行檔案或非命令列工具(例如守護程序之類)放到此目錄中。因為眾多的軟體包都使用此目錄,所以必須選擇獨一無二的可執行檔名稱,以避免衝突。 T} T{ /usr/lib/\fIarch\-id\fR T}:T{ 全域性通用的體系結構相關的共享庫。因為眾多的軟體包都使用此目錄,所以必須選擇獨一無二的共享庫名稱,以避免衝突。 T} T{ /usr/lib/\fIpackage\fR T}:T{ 發行商提供的該軟體包專屬的體系結構無關的靜態資源(可執行檔案、庫檔案、只讀資料)。 T} T{ /usr/lib/\fIarch\-id\fR/\fIpackage\fR T}:T{ 發行商提供的體系結構相關的該軟體包專屬的資源(通常不包括軟體包內部使用的可執行檔案)。 T} T{ /usr/include/\fIpackage\fR T}:T{ 該軟體包提供的共享庫的 C/C++ 標頭檔案。 T} .TE .sp 1 .PP 發行商提供的其他靜態資源應該存放在 /usr/share 目錄下, 具體的存放位置應該遵守其他的相關規範。 .PP 存放軟體包執行時資料以及配置檔案的相關目錄如下: .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .B Table\ \&2.\ \&系統軟體包的執行時資料以及配置檔案的推薦位置 .TS allbox tab(:); lB lB. T{ 目錄 T}:T{ 用途 T} .T& l l l l l l l l l l l l l l. T{ /etc/\fIpackage\fR T}:T{ 特定於該系統的配置檔案。如果該目錄不存在,那麼軟體包應該儘可能回退到安全的預設設定,而不應該罷工。可選地,可以設定一個 \fBtmpfiles.d\fR(5) 配置檔案,以實現在系統啟動過程中,從 /usr/share/factory 目錄中複製("C"指令)或軟連線("L"指令)所需的檔案到該目錄中。 T} T{ /run/\fIpackage\fR T}:T{ 軟體包的執行時資料。因為該目錄會在系統啟動過程中被清空,所以軟體包必須有許可權在此目錄中建立子目錄及檔案。可選的,可以設定一個 \fBtmpfiles.d\fR(5) 配置檔案,以實現在系統啟動過程中自動在此目錄中建立所需的子目錄及檔案。或者可選的,在服務單元檔案中使用 \fIRuntimeDirectory=\fR 指令(詳見 \fBsystemd.unit\fR(5) 手冊)以達到上述目的。 T} T{ /run/log/\fIpackage\fR T}:T{ 軟體包的執行時日誌。因為該目錄會在系統啟動過程中被清空,所以軟體包必須有許可權在此目錄中建立子目錄及檔案。 T} T{ /var/cache/\fIpackage\fR T}:T{ 軟體包的持久快取。清空該目錄必須不影響軟體包的正常工作(但軟體包可以花費額外的時間重建這些快取)。軟體包必須有許可權在此目錄中建立子目錄及檔案。 T} T{ /var/lib/\fIpackage\fR T}:T{ 軟體包的持久專屬資料。存放無法明確分類的持久資料。軟體包必須有許可權在此目錄中建立子目錄及檔案,因為在系統啟動時該目錄可能為空。可選的,可以設定一個 \fBtmpfiles.d\fR(5) 配置檔案,以實現在系統啟動過程中自動在此目錄中建立所需的子目錄及檔案。 T} T{ /var/log/\fIpackage\fR T}:T{ 軟體包的持久日誌資料。軟體包必須有許可權在此目錄中建立子目錄及檔案,因為在系統啟動時該目錄可能為空。 T} T{ /var/spool/\fIpackage\fR T}:T{ 軟體包的持久佇列資料。軟體包必須有許可權在此目錄中建立子目錄及檔案,因為在系統啟動時該目錄可能為空。 T} .TE .sp 1 .SH "使用者軟體包" .PP 對於專屬於特定使用者的軟體包, 其存貯在使用者家目錄中的檔案必須嚴格遵守下面的檔案佈局規範。 注意,當安裝屬於系統範圍的軟體包時, 應該遵守前面"系統軟體包"小節的佈局規範。 下面列出了當使用者在其家目錄中安裝專屬軟體包時, 由發行商提供的各種型別的檔案在使用者家目錄中應該存放的位置: .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .B Table\ \&3.\ \&使用者軟體包中靜態檔案的推薦位置 .TS allbox tab(:); lB lB. T{ 目錄 T}:T{ 用途 T} .T& l l l l l l l l. T{ ~/\&.local/bin T}:T{ 應該出現在 \fI$PATH\fR 搜尋路徑中且與體系結構無關的可執行檔案。不要將軟體包內部使用的可執行檔案或非命令列工具(例如守護程序之類)放到此目錄中。因為眾多的軟體包都使用此目錄,所以必須選擇獨一無二的可執行檔名稱,以避免衝突。 T} T{ ~/\&.local/lib/\fIarch\-id\fR T}:T{ 全域性通用的體系結構相關的共享庫。因為眾多的軟體包都使用此目錄,所以必須選擇獨一無二的共享庫名稱,以避免衝突。 T} T{ ~/\&.local/lib/\fIpackage\fR T}:T{ 發行商提供的該軟體包專屬的體系結構無關的靜態資源(可執行檔案、庫檔案、只讀資料)。 T} T{ ~/\&.local/lib/\fIarch\-id\fR/\fIpackage\fR T}:T{ 發行商提供的體系結構相關的該軟體包專屬的資源(通常不包括軟體包內部使用的可執行檔案)。 T} .TE .sp 1 .PP 發行商提供的其他靜態資源應該存放在 ~/\&.local/share 目錄下, 具體的存放位置應該遵守其他的相關規範。 .PP 存放軟體包執行時資料以及配置檔案的相關目錄如下: .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .B Table\ \&4.\ \&使用者軟體包的執行時資料以及配置檔案的推薦位置 .TS allbox tab(:); lB lB. T{ 目錄 T}:T{ 用途 T} .T& l l l l l l. T{ ~/\&.config/\fIpackage\fR T}:T{ 特定於該使用者的配置檔案。如果該目錄不存在,那麼軟體包必須能夠安全的回退到預設設定,而不能罷工。 T} T{ \fI$XDG_RUNTIME_DIR\fR/\fIpackage\fR T}:T{ 特定於該使用者的執行時資料。 T} T{ ~/\&.cache/\fIpackage\fR T}:T{ 軟體包的持久快取。清空該目錄必須不影響軟體包的正常工作(但軟體包可以花費額外的時間重建這些快取)。軟體包必須有許可權在此目錄中建立子目錄及檔案。 T} .TE .sp 1 .SH "參見" .PP \fBsystemd\fR(1), \fBhier\fR(7), \fBsystemd-path\fR(1), \fBsystemd-gpt-auto-generator\fR(8), \fBsysctl.d\fR(5), \fBtmpfiles.d\fR(5), \fBpkg-config\fR(1), \fBsystemd.unit\fR(5) .SH "NOTES" .IP " 1." 4 File System Hierarchy .RS 4 \%http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html .RE .IP " 2." 4 IEEE Std 1003.1 .RS 4 \%http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03 .RE .IP " 3." 4 XDG Base Directory Specification .RS 4 \%http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html .RE .IP " 4." 4 Multiarch Architecture Specifiers (Tuples) .RS 4 \%https://wiki.debian.org/Multiarch/Tuples .RE .IP " 5." 4 xdg-user-dirs .RS 4 \%http://www.freedesktop.org/wiki/Software/xdg-user-dirs/ .RE .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .PP 翻譯人員:金步國 .br 金步國作品集:http://www.jinbuguo.com .br .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR