การทำความเข้าใจตำแหน่งไฟล์การกำหนดค่าโฮม: ~ /, ~ / .config / และ ~ / .local / share /


14

มีไฟล์การกำหนดค่าที่ซ่อนอยู่จำนวนหนึ่งในโฮมไดเรกทอรีของฉัน:

  • บางส่วนอยู่ใน~/(เช่น~/.cinnamon)
  • บางส่วนอยู่ใน~/.config/(เช่น~/.config/cinnamon-session)
  • บางส่วนอยู่ใน~/.local/share/(เช่น~/.local/share/cinnamon-session)

ตรรกะของไฟล์กำหนดค่าโฮมคืออะไร

a) ความแตกต่างระหว่างไฟล์ที่ซ่อนในสามที่นี้คืออะไร?

b) "ท้องถิ่น" หมายถึงอะไรในบริบทนี้ vs config, vs home

c) ในโฮมไดเร็กตอรี่, ยังมีไดเรคทอรีการกำหนดค่าทั่วไปที่สำคัญอื่น ๆ ที่ใช้งานโดยหลายแอพพลิเคชั่นหรือไม่?


Debian 8.6 Cinnamon 2.2.16


1
บางส่วนของการนี้จะครอบคลุมในXDG ฐานสารบบข้อมูลจำเพาะ
StrongBad

คำตอบ:


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/อาคา%LOCALAPPDATA%- ไฟล์ข้อมูลต่อผู้ใช้สำหรับเครื่องนี้ใช้งานที่ไหน
  • %USERPROFILE%/AppData/Roaming/อาคา%APPDATA%- ไฟล์ข้อมูลต่อผู้ใช้ที่ผู้ใช้โรมมิ่งสามารถเข้าถึงได้จากหลายเครื่อง
  • %USERPROFILE%/AppData/Local/Temp/อาคา%TEMP%- ไฟล์ชั่วคราวสำหรับผู้ใช้แต่ละคนไปที่ไหน

แนวคิดก็คือว่าต่อผู้ใช้ไฟล์สามารถ (ในหมู่ค่อนข้างมากของสิ่งอื่น ๆ ) ไฟล์ข้อมูลแอพลิเคชัน (machine-ที่เฉพาะเจาะจงหรือโรมมิ่ง), ไฟล์การตั้งค่าโปรแกรม , แคชไฟล์และไฟล์ชั่วคราวและการประยุกต์ใช้วางไว้ใน subtrees ฝังรากที่เหล่านี้ ไดเรกทอรีเฉพาะ

(MacOS มีระบบที่คล้ายกันที่ผู้ใช้จะได้รับของแต่ละบุคคลต่อผู้ใช้ "ผู้ใช้ท้องถิ่น" subtrees ภายใต้การ/var/foldersมีCและTไดเรกทอรีสำหรับแคชและไฟล์ชั่วคราว.)

ในฐานะที่เป็นคนทราบ Arch มีบาง "จุด" ไฟล์และไดเรกทอรีที่ได้กลายเป็นที่นิยมใช้โดยการใช้งานหลายและไม่น่าจะเห็นด้วยกับ XDG ในอนาคตอันใกล้เช่นและ$HOME/.ssh$HOME/.netrc

อ่านเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.