/etc/locale.conf와 /etc/default/locale의 차이점

/etc/locale.conf와 /etc/default/locale의 차이점

저는 KDE 네온 5.20을 실행하고 있는데 두 파일 모두 비슷한 /etc/locale.conf내용을 가지고 있는 것을 발견했습니다 /etc/default/locale. 이 두 파일의 차이점은 무엇이며 시스템 로케일을 변경하려면 어느 파일을 편집해야 합니까?

답변1

많은 응용 프로그램이 작동하려면 LANG 환경 변수가 필요합니다. 따라서 대부분의 배포판에는 로그인 후 LANG을 설정하는 시작 스크립트가 있습니다.

그렇다면 시작 스크립트는 LANG 구성을 어디에서 읽습니까? 분포마다 다릅니다.

  • Debian 기본 콘솔 로그인 시작 스크립트 읽기/etc/default/locale
  • Slackware 기본 콘솔 로그인 시작 스크립트포인트 소스 /etc/profile.d/lang.sh
  • KDE 플라즈마 읽기~/.config/plasma-localerc
  • 읽어야 할 다른 배포판/etc/locale.conf

Systemd는 어떤 배포판에 설치되어 있는지 모릅니다. 따라서 localectl을 사용하여 구성을 수정하려는 경우 localectl은 해당 구성이 /etc/locale.conf존재하는지 감지합니다. 존재하는 경우 localectl은 이를 수정하거나 /etc/default/locale대체 항목으로 만듭니다.

Ubuntu(비 GUI)에 관한 한, /etc/locale.conf해당 사례가 존재하는 경우 localectl을 어떻게 실행하더라도 LANG 변수는 재부팅 후에도 유지된다는 것을 알 수 있습니다. 이는 Ubuntu가 /etc/default/localelocalectl을 사용하여 Ubuntu가 절대 읽지 않는 파일을 수정하기 때문입니다.

답변2

다양한 배포판이나 Linux 버전에서는 다음 중 하나를 채택합니다. 적절한 예로서 Debian 10의 문서에서는 주로 /etc/default/locale(예를 들어 man update-locale)를 참조합니다. systemd와 관련된 부분도 상담할 수 있습니다 /etc/locale.conf(예 man locale.conf: ).

간단한 테스트에 따르면 systemd(Debian 10의 일부)는 localectlas 시스템 로캘이 존재하지 않는 한 해당 내용을 보고합니다. 이 경우 분명히 우선합니다./etc/default/locale/etc/locale.conf

나는 /etc/default/locale(다시 말하지만 현재 버전의 데비안에서만) 독점적으로 사용합니다. 내 추론은 다음과 같습니다: 이것은 데비안에 맞을 것이고 시스템에도 맞을 것이므로 전반적으로 분명한 선택입니다.

답변3

몇 가지 실험 후에 KDE 네온이 의 로케일을 존중 /etc/default/locale하지만 의 로케일은 무시한다는 것을 확인했습니다 /etc/locale.conf. Ubuntu가 로케일 파일에 대해 다른 위치를 사용하는 이유를 아직도 이해하지 못하지만 Ubuntu 기반 배포판에서는 이를 사용하여 /etc/default/locale로케일을 설정해야 한다는 결론에 도달했습니다. 또한 /etc/default/locale방금 심볼릭 링크를 다음으로 바꾸었고 /etc/locale.conf모든 것이 잘 작동했지만 이제는 로케일을 포함하는 파일만 있습니다.

관련 정보