Software-Installation

是否有儲存可執行依賴項的標準位置?

  • February 24, 2022

當我列出系統上 bin 文件夾的內容時,我通常只看到執行檔。一些執行檔需要額外的文件,例如數據和配置文件才能執行。是否有標準的系統位置儲存這些文件以便執行檔找到它們?

您在這個問題中沒有提到您的作業系統,但我在上一個問題中看到您使用的是基於 BSD 的 macOS。然而,由於許多應用程序設計為在 Linux 和 BSD 上執行相同,因此答案通常是相同的。

一般來說,配置和數據幾乎可以儲存在任何地方,但這不是一個好主意,因此按照慣例,有一些標準:

  • 系統範圍的配置文件儲存在/etc文件系統層次標準中。另請參閱OS X、Linux 和 FreeBSD 之間的 FHS 差異,但 Linux 和 BSD 都完全同意/etc(據我所知,FHS 的其餘大部分內容)。
  • 直到最近,使用XDG 基本目錄規範才對使用者配置進行了一些未定義。遵循該規範的應用程序會將配置儲存在$XDG_CONFIG_HOME變數指定的目錄中,或者$HOME/.config以其他方式儲存。

同樣,那是最近的事。我還記得另一個問題,您正在使用 Fish shell,它是遵循此約定的應用程序之一。

  • 附加數據可能儲存在多個位置,但 FHS 將“與架構無關的數據”(例如 Fish 的內置函式)定義為在/usr/share.
  • 然後是/var,它包含“可變數據文件”,例如日誌文件、郵件假離線等。

我可能遺漏了一些常見的候選者,並且我故意跳過了庫,它們是程式碼而不是“配置和數據”。但是請瀏覽 FHS 和 XDG 基本目錄規範以獲取更多資訊。

引用自:https://unix.stackexchange.com/questions/692054