Розуміння розташування файлів домашньої конфігурації: ~ /, ~ / .config / і ~ / .local / share /


14

У моєму домашньому каталозі є ряд прихованих файлів конфігурації:

  • деякі з них є ~/(наприклад ~/.cinnamon)
  • деякі з них є ~/.config/(наприклад ~/.config/cinnamon-session)
  • деякі з них є ~/.local/share/(наприклад ~/.local/share/cinnamon-session)

Яка логіка, де живуть домашні файли конфігурації?

а) Яка різниця між прихованими файлами в цих трьох місцях?

b) Що саме означає "локальний" у цьому контексті vs config, vs home?

c) У домашньому каталозі також є інші важливі загальні каталоги конфігурації, які використовуються багатьма програмами?


Debian 8.6 Кориця 2.2.16


Відповіді:


16

Тут довга історія, коли мова йде про загальний випадок "точкових файлів", але каталоги $HOME/.configта $HOME/.localкаталоги, які ви конкретно згадуєте, мають походження в специфікації базового каталогу XDG .

  • $HOME/.config- куди йдуть файли конфігурації користувача, якщо таких немає $XDG_CONFIG_HOME.
  • $HOME/.cache- куди йдуть файли кешу користувача, якщо таких немає $XDG_CACHE_HOME.
  • $HOME/.local/share- куди йдуть файли даних для кожного користувача, якщо таких немає $XDG_DATA_HOME.

Користувачі Windows можуть розпізнати це як паралель тому, що Microsoft мав у Windows NT після версії 4 (хоча імена змінилися у версії 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.

Подальше читання

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.