데비안은 내 파일 시스템이 ISO-8859-1로 인코딩되어 있다고 생각합니다.

데비안은 내 파일 시스템이 ISO-8859-1로 인코딩되어 있다고 생각합니다.

이 사이트는 질문이라기보다는 불만에 가깝기 때문에 이 문제를 해결하기에는 적합한 사이트가 아닐 수도 있지만 여기에 있습니다.

오늘 저는 컴퓨터를 Mint 15에서 Debian 7.6으로 업데이트했습니다. 이렇게 하면 내 컴퓨터는 기존의 모든 파일 이름이 UTF-8 대신 ISO-8859-1로 인코딩된 것으로 생각합니다. 예를 들어 "à"가 포함된 파일 이름은 이제 "à" 등으로 표시됩니다.
알고보니 내 시스템에 말해야 했어분명히export LANG=en_US.UTF-8.bashrc 파일을 넣으면 파일 시스템이 UTF-8을 사용합니다.

문제는 왜인가? 2014년이라는 시대에 왜 이런 일이 필요한가? 분명히 Mint의 기본값은 UTF-8입니다. 데비안은 왜 달라야 합니까? 내가 원하는 로케일을 설치할 때 지시했고 /etc/locale.gen에는 그것이 en_US.UTF8 UTF8유일한 (주석 처리되지 않은) 행으로 포함되어 있음에도 불구하고 데비안이 이렇게 모호하고 오래된 기본값을 사용하는 이유는 무엇입니까? 내보내기 라인을 편집하려면 지금부터 만드는 모든 새 사용자 계정에 대해 .bashrc 파일을 편집해야 합니까?

답변1

이것데비안의 기본 로케일적어도 천명음 이후에는 UTF-8로 인코딩되어 있습니다(언제 전환했는지 기억이 나지 않습니다). 따라서 설치 중에 기본이 아닌 일부 설정을 선택했어야 합니다.

내보내기를 LANG=en_US.UTF-8내 .bashrc 파일에 넣습니다.

그건 안 되니까.bashrc잘못된 파일입니다. 여기에 정의된 환경 변수는 터미널에서 실행되는 프로그램에만 적용됩니다.

이 환경 변수를 정의하는 올바른 위치는 시스템 설정 또는 사용자별 설정 /etc/environment으로 만드는 것 입니다. ~/.pam_environment두 파일 모두로그인한 상태에서 읽기(모든 로그인 방법을 통해).

특정한로케일 변수문자 인코딩의 경우 LC_CTYPE.settings 를 포함한 LANG모든 설정이 있습니다.LC_COLLATE놀라운 결과를 가져올 수도 있다. 를 설정하면 됩니다 LC_CTYPE.

LANG따라서 설정에서 제거 .bashrc하고 LC_CTYPE=en_US.utf8해당 위치(예: /etc/environment또는 ) 에 추가하세요 ~/.pam_environment.

답변2

첫째, Mint 15를 Debian 7.6으로 업데이트할 수 있다는 사실에 놀랐습니다. 결국 그들은 다른 분포입니다.

나는 당신이 유럽에 있고 로케일에 관한 몇 가지 질문에 대답했기 때문에 데비안이 ISO 8859.1을 사용하기로 결정했다고 가정합니다.

답변3

내보내기 라인을 편집하려면 지금부터 만드는 모든 새 사용자 계정에 대해 .bashrc 파일을 편집해야 합니까?

이 경우 가장 좋은 방법은 시스템 전체 파일에 넣는 것입니다. 먼저 어딘가에 이미 설정되어 있는지 확인하세요.

grep -R LANG /etc

거기에서 아무것도 변경하고 싶지 않을 수도 있습니다.

자일스의 대답아마도 이것을 설정하는 가장 효율적인 장소가 있을 것입니다. 그러나 "로그인 시 읽기(모든 로그인 방법을 통해)"의 의미를 설명하기 위해 일부를 여기에 남겨두겠습니다.

ZZ-local.sh파일을 생성하여 에 넣을 수 있습니다 /etc/profile.d. 사용자가 로그인하면 해당 파일은 사전순으로 가져오므로 ZZ이전 내용을 덮어써야 합니다. 파일은 실행 가능하거나 shebang을 포함할 필요가 없으므로 한 줄이면 export LANG=...됩니다.

일부 GUI 로그인 디스플레이 관리자아니요읽기 - 예를 들어, lightdm(이에 대한 인기 있는 내용 중 하나를 발견했을 수 있습니다 .profile. lightdm은 init 스크립트에서 내보내집니다.) 이 경우 WRT에 대해 설명한 것과 동일한 작업을 수행해야 하지만 실제로는 다음을 수행해도 문제가 되지 않습니다.grep$LANG/etc/profile.d/etc/X11/Xsession.d

ln -s /etc/profile.d/ZZ-local.sh /etc/X11/Xsession.d/ZZ-local

두 파일 모두에 대한 심볼릭 링크를 만듭니다. 이는 소스를 두 번 연속으로 가져오는 것을 의미할 수 있다는 점을 명심하세요. 비록 설정만 했다면 $LANG괜찮습니다.

관련 정보