Memahami lokasi file konfigurasi rumah: ~ /, ~ / .config / dan ~ / .local / share /

13

Ada sejumlah file konfigurasi tersembunyi di direktori home saya:

  • beberapa dari mereka ada di ~/(mis. ~/.cinnamon)
  • beberapa dari mereka ada di ~/.config/(mis. ~/.config/cinnamon-session)
  • beberapa dari mereka ada di ~/.local/share/(mis. ~/.local/share/cinnamon-session)

Apa logikanya tempat file konfigurasi rumah tinggal?

a) Apa perbedaan antara file tersembunyi di tiga tempat ini?

b) Apa sebenarnya arti "lokal" dalam konteks ini, vs config, vs home?

c) Dalam direktori home, apakah ada direktori konfigurasi umum penting lainnya yang digunakan oleh banyak aplikasi?


Debian 8.6 Cinnamon 2.2.16

Pandangan elips
sumber
1
Beberapa di antaranya tercakup dalam Spesifikasi Direktori Pangkalan XDG .
StrongBad

Jawaban:

14

Ada sejarah panjang di sini ketika datang ke kasus umum "file dot", tetapi direktori $HOME/.configdan $HOME/.localyang Anda sebutkan memiliki asal dalam Spesifikasi Direktori Pangkalan XDG .

  • $HOME/.configadalah tempat file konfigurasi per pengguna pergi jika tidak ada $XDG_CONFIG_HOME.
  • $HOME/.cacheadalah tempat file cache per-pengguna pergi jika tidak ada $XDG_CACHE_HOME.
  • $HOME/.local/shareadalah tempat file data per-pengguna pergi jika tidak ada $XDG_DATA_HOME.

Pengguna Windows dapat mengenali ini sebagai paralel dari apa yang dimiliki Microsoft pada Windows NT sejak versi 4 (meskipun nama-nama tersebut diubah dalam versi 6.0):

  • %USERPROFILE%/AppData/Local/alias %LOCALAPPDATA%- ke mana file data per pengguna untuk mesin ini pergi
  • %USERPROFILE%/AppData/Roaming/alias %APPDATA%- tempat file data per pengguna yang dapat diakses oleh pengguna roaming dari beberapa mesin
  • %USERPROFILE%/AppData/Local/Temp/alias %TEMP%- ke mana file sementara per pengguna pergi

Idenya adalah bahwa file per pengguna dapat (di antara cukup banyak hal lain) file data aplikasi (khusus mesin atau jelajah), file konfigurasi aplikasi , file cache , dan file sementara , dan aplikasi menempatkannya dalam sub pohon yang di-root pada direktori tertentu.

(MacOS memiliki sistem serupa di mana pengguna mendapatkan individu per-user "pengguna lokal" sub pohon di bawah /var/foldersdengan Cdan Tsubdirektori untuk cache dan file-file sementara.)

Seperti yang dicatat oleh Arch, ada beberapa file "dot" dan direktori yang telah menjadi umum digunakan oleh beberapa aplikasi dan tidak mungkin setuju dengan XDG di masa mendatang, seperti $HOME/.sshdan $HOME/.netrc.

Bacaan lebih lanjut

JdeBP
sumber