Configuration
了解主配置文件位置:~/、~/.config/ 和 ~/.local/share/
我的主目錄中有許多隱藏的配置文件:
- 其中一些在
~/
(例如~/.cinnamon
)- 其中一些在
~/.config/
(例如~/.config/cinnamon-session
)- 其中一些在
~/.local/share/
(例如~/.local/share/cinnamon-session
)家庭配置文件所在的邏輯是什麼?
a) 這三個地方的隱藏文件有什麼區別?
b)“本地”在這種情況下究竟是什麼意思,vs config,vs home?
c) 在主目錄中,是否還有其他重要的公共配置目錄被多個應用程序使用?
Debian 8.6 肉桂 2.2.16
關於“點文件”的一般情況,這裡有很長的歷史,但是您特別提到的
$HOME/.config
和目錄起源於XDG Base Directory Specification。$HOME/.local
$HOME/.config
如果沒有$XDG_CONFIG_HOME
.$HOME/.cache
如果沒有$XDG_CACHE_HOME
.$HOME/.local/share
如果沒有$XDG_DATA_HOME
.Windows 使用者可能會認為這與 Microsoft 自第 4 版以來在 Windows NT 中所擁有的類似(儘管名稱在 6.0 版中發生了變化):
%USERPROFILE%/AppData/Local/
aka%LOCALAPPDATA%
— 這台機器的每個使用者數據文件的去向%USERPROFILE%/AppData/Roaming/
aka%APPDATA%
— 漫遊使用者可以從多台機器訪問的每個使用者數據文件所在的位置%USERPROFILE%/AppData/Local/Temp/
aka%TEMP%
— 每個使用者的臨時文件所在的位置這個想法是每個使用者的文件可以是(除了很多其他的東西)應用程序數據文件(機器特定或漫遊)、應用程序配置文件、記憶體文件和臨時文件,並且應用程序將它們放置在以這些為根的子樹中特定目錄。
(MacOS 有一個類似的系統,使用者可以在其中獲得單獨的每個使用者“使用者本地”子樹
/var/folders
,C
以及T
用於記憶體和臨時文件的子目錄。)正如 Arch 人所指出的,有一些“點”文件和目錄已被多個應用程序普遍使用,並且在可預見的未來不太可能與 XDG 達成一致,例如
$HOME/.ssh
和$HOME/.netrc
.進一步閱讀
- Waldo Bastian、Ryan Lortie 和 Lennart Poettering(2010 年)。 XDG 基本目錄規範。自由桌面.org。
- 克里斯傑克遜 (2008-02-05)。我應該在哪裡寫程序數據而不是程序文件?. 原始食譜Awesomsauce。微軟。
- 管理漫遊使用者數據部署指南。Windows Vista 技術庫。微軟技術網。
- https://askubuntu.com/questions/102046/
- https://unix.stackexchange.com/a/555214/5132
- https://wiki.archlinux.org/index.php/XDG_Base_Directory_support
- 萊昂內爾·德里科 (2009-03-11)。 修改您的應用程序以使用 XDG 文件夾。