로캘을 설정하지 못했습니다. 시스템 수리

로캘을 설정하지 못했습니다. 시스템 수리

openSUSE Tumbleweed를 사용하는 32비트 서버:

로그인할 때 다음 경고가 표시됩니다.

/usr/bin/manpath: 로케일을 설정할 수 없습니다. $LC_* 및 $LANG이 올바른지 확인하세요.

위 오류를 해결하기 위해 다음 명령을 실행하여 시스템 언어와 시간을 수정했지만 오류가 발생했습니다.

> sudo yast2 language
[sudo] password for root: 
Failed to set locale. Fix your system.
Failed to set locale. Fix your system.

반품:

> sudo yast2 timezone
[sudo] password for root: 
Failed to set locale. Fix your system.
Failed to set locale. Fix your system.

이유를 알 수 없습니다. 누구든지 제안이 있나요?

고쳐 쓰다

로케일 출력:

> locale 
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=
LC_CTYPE=UTF-8
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

또 다른 출력:

> locale -a
locale: Cannot set LC_CTYPE to default locale: No such file or directory
C
C.utf8
POSIX
aa_DJ
aa_DJ.utf8
aa_ER
aa_ER@saaho
aa_ET
af_ZA
af_ZA.utf8
agr_PE
ak_GH
am_ET
an_ES
an_ES.utf8

# ... it' a long list

고쳐 쓰다

다음 줄을 추가해도 ~/.profile로그아웃하거나 다시 시작한 후에도 문제가 해결되지 않았습니다.

export LANG="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"

새로운 관찰

  1. 서버에 대한 직접/물리적 로그인: 경고가 발생하지 않음
  2. Linux 노트북(openSUSE Leap 15.1)에서 SSH를 통해 서버에 로그인: 경고가 표시되지 않음
  3. MacBook 노트북에서 SSH를 통해 서버에 로그인하면 다음 경고가 표시됩니다.

/usr/bin/manpath: 로케일을 설정할 수 없습니다. $LC_* 및 $LANG이 올바른지 확인하세요.

답변1

나는 몇 단계를 거쳐 이 문제를 해결했고, SSH를 통해 연결한 Raspberry Pi의 일부 문제를 해결했습니다.

  1. en_GB.UTF-8에서 주석을 달고 /etc/locale.gen주석을 제거했습니다 en_US.UTF-8.
  2. LC_CTYPE=en_US.UTF-8행과 LC_ALL=en_US.UTF-8을 추가 했습니다 /etc/default/locale. 예를 들어 이와 같은 행을 더 추가해야 할 수도 있습니다 LC_MESSAGES=en_US.UTF-8.
  3. 나는 도망 갔다 export LC_ALL=en_US.UTF-8.
  4. 마침내 나는 달렸다 sudo locale-gen.

다음 단계를 수행하면 locale경고가 표시되지 않아야 하며 en_US.UTF-8Maybe 및 를 제외한 모든 필드가 표시되어야 합니다. 수동으로 사용하고 변경할 수 있습니다.LANGLANGUAGEexport LANG=en_US.UTF-8export LANGUAGE=en_US.UTF-8

답변2

댓글대로여기:

아, 그게 설명이 되네. SSH는 연결과 함께 로케일을 전달합니다. 따라서 Mac에는 Linux 시스템에서 사용할 수 없는 로캘이 필요합니다.

Mac 로케일을 일관된 로케일로 변경하거나 로케일을 전달하지 않도록 Mac SSH 설정을 변경하세요. https://stackoverflow.com/questions/29609371/how-do-not-pass-locale-through-ssh

관련 정보