XDG_DATA_HOME에는 무엇이 저장되어 있나요?

XDG_DATA_HOME에는 무엇이 저장되어 있나요?

내가 읽고있다XDG 기본 디렉토리 사양, 그러나 정확한 목적을 이해할 수 없습니다 $XDG_DATA_HOME. 사양에는 다음이 언급되어 있습니다.

사용자별 데이터 파일이 기록되는 기본 디렉터리가 있습니다. 이 디렉토리는 환경 변수에 의해 정의됩니다 $XDG_DATA_HOME.

하지만 어떻게 설명해야 할지 모르겠어요사용자별 데이터 파일. 그래픽, 사운드 파일, 글꼴 등 응용 프로그램의 읽기 전용 데이터를 지원하는 데 사용됩니까? 아니면 이 데이터는 애플리케이션을 사용하는 사용자가 생성한 것입니까?

두 개의 애플리케이션이 있고 해당 데이터가 속하는지 모르기 때문에 이것을 묻는 것입니다 XDG_DATA_HOME.

  • TaskWarrior는 모든 작업(및 해당 메타데이터)이 포함된 데이터 파일을 생성합니다. 이러한 데이터 파일은 정적이지 않으며 작업을 추가/수정/삭제할 때 변경됩니다. 그러나 수동으로 편집되지는 않으며 항상 앱을 사용하여 작업을 추가/수정/삭제합니다.
  • tarball을 생성하는 백업 스크립트가 있습니다. 이러한 타르볼은 분명히 원격으로 저장되지만 특정 상황에서는 빠른 액세스를 위해 로컬로 저장하고 싶습니다.

답변1

XDG_DATA_HOME그 목적 은 응용 프로그램에서 생성된 데이터를 저장하는 것인 것 같습니다.대표하다사용자별로 다르지만 사용자가 직접적으로 관심을 두지 않는 형식입니다. 즉, 사용자가 개별적으로 관리하고 싶지 않거나 다른 시스템에 복사(또는 다른 사용자에게 보내기)하려는 파일입니다. 이러한 파일은 Task Warrior 데이터 파일과 같은 특정 응용 프로그램을 통해서만 액세스할 수 있습니다.

그러나 사양에서는 다음과 같은 사용을 허용하는 것 같습니다 /usr/share.특정 사용자가 자신의 홈 디렉터리에 응용 프로그램을 설치하는 경우 응용 프로그램 데이터 파일은 본질적으로 해당 사용자에게 특정하지 않습니다. 이 경우 바이너리는 에 들어가고 ~/.local/bin관련 데이터는 에 들어갑니다 XDG_DATA_HOME.

스토리지 구성에 대한 데이터를 입력해야 합니다 XDG_CONFIG_HOME. 또 다른 생각은 사용자가 백업하고 복원하는 경우 XDG_DATA_HOME모든 데이터를 복원해야 하지만 설정은 복원하지 않고 백업하고 복원하는 경우 XDG_CONFIG_HOME설정을 복원해야 한다는 것입니다.

데이터는 다음과 같습니다.다시 만들다에 들어가야 합니다 XDG_CACHE_HOME. 타르볼이 거기에 맞는다고 말하고 싶습니다.

(일반적으로 데스크톱 환경과 관련된 환경 변수 설정 여부에 대한 고려 사항은 $XDG사양에서 환경 변수가 없을 때 사용할 기본값을 제공하므로 관련성이 없습니다.)

관련 정보