로케일을 찾을 수 없음/로케일 설정 실패 - 어떻게 해야 합니까?

로케일을 찾을 수 없음/로케일 설정 실패 - 어떻게 해야 합니까?

VPS(OpenVZ)에 Debian 7 i386을 설치했습니다. 로케일을 제외한 모든 것이 잘 작동합니다. 설치하려고 하면 다음과 같이 표시됩니다.

[...]
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LANG = "pl_PL.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
[...]

내가 시도한 것:

  1. 자신만의 로케일 생성 - update-locale LC_ALL="pl_PL.UTF-8"- 표시:http://www.wklej.org/id/1248438/
  2. apt-get install --reinstall locales http://www.wklej.org/id/1248442/
  3. dpkg-reconfigure locales+ 설정과 pl_PL.UTF-8동일 pl_PL.ISO-8859-2합니다 en_US.http://www.wklej.org/id/1248446/
  4. export LC_ALL=pl_PL.UTF-8(루트 디렉토리에서도):

    -bash: warning: setlocale: LC_ALL: cannot change locale (pl_PL.UTF-8)
    

다음은 로케일을 보여주는 것입니다.

root:~# locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=pl_PL.UTF-8
LANGUAGE=
LC_CTYPE="pl_PL.UTF-8"
LC_NUMERIC="pl_PL.UTF-8"
LC_TIME="pl_PL.UTF-8"
LC_COLLATE="pl_PL.UTF-8"
LC_MONETARY="pl_PL.UTF-8"
LC_MESSAGES="pl_PL.UTF-8"
LC_PAPER="pl_PL.UTF-8"
LC_NAME="pl_PL.UTF-8"
LC_ADDRESS="pl_PL.UTF-8"
LC_TELEPHONE="pl_PL.UTF-8"
LC_MEASUREMENT="pl_PL.UTF-8"
LC_IDENTIFICATION="pl_PL.UTF-8"
LC_ALL=

/var/log에서 흥미로운 내용을 찾을 수 없습니다. 저장소를 공식+로 변경하고 로케일을 수동으로 설치해도 문제가 해결되지 않았으며 이는 데비안 7을 새로 설치할 때마다 나타났습니다.

답변1

로캘이 생성되지 않은 것 같습니다. 해당 행을 눌러 pl_PL.UTF-8올바르게 선택 하셨나요?dpkg-reconfigure localesspace

그렇다면, 그 라인

pl_PL.UTF-8 UTF-8

in은 /etc/locale.gen주석 처리되지 않았습니다(=로 시작하지 않음 #). 이 문제를 해결해야 하는 경우 locale-gen로케일을 생성하기 위해 실행해야 합니다 . 출력은 다음과 같아야 합니다.

Generating locales (this might take a while)...
   pl_PL.UTF-8... done
Generation complete.

생성하려는 로캘이 출력되지 않으면 시스템에 문제가 있는 것 같습니다. 한 가지 이유는 이미 localepurge설치되어 있기 때문일 수 있습니다 . 파일이 없거나 이런 일 /usr/share/locale/pl/LC_MESSAGES/usr/share/locale/pl_PL/LC_MESSAGES발생하거나 시스템이 손상된 경우.

답변2

첫 번째:

sudo apt-get purge locales

그 다음에:

sudo aptitude install locales

그리고 유명하게:

sudo dpkg-reconfigure locales

이렇게 하면 시스템의 로캘이 지워진 다음 로캘이 다시 설치되고 libc6이 2.19에서 2.13으로 다운그레이드됩니다. 여기에 문제가 있습니다. 그런 다음 로케일을 다시 구성하십시오.

답변3

빠르고 쉬운 방법(다른 방법보다 더 많은 디스크를 사용한다는 뜻임):

apt install locales-all

답변4

달리기를 해보세요

locale -a

당신이 가지고 있다면

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

이 경우 해결책은 데비안 스타일 패키지 로케일(glibc 패키지[1]) 또는 glibc-all-langpacks CentOS/Fedora를 설치하는 것입니다.

[1]https://tracker.debian.org/pkg/glibc

관련 정보