localidade não encontrada / configuração local falha - o que devo fazer?

27

Instalei o Debian 7 i386 no meu VPS (OpenVZ). Tudo funciona bem, exceto locales - qualquer tentativa de instalar qualquer coisa mostra:

[...]
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
[...]

O que eu tentei:

  1. A criação de códigos de idioma eu mesmo - update-locale LC_ALL="pl_PL.UTF-8" - mostra: link
  2. apt-get install --reinstall locales link
  3. O mesmo com dpkg-reconfigure locales + configuração pl_PL.UTF-8 , pl_PL.ISO-8859-2 ou até en_US : link
  4. export LC_ALL=pl_PL.UTF-8 (mesmo na raiz):

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

Veja o que mostra a localidade:

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=

Nada interessante encontrado em / var / log. Mesmo mudar o repositório para localidades oficiais de instalação + purga e manual não resolve o meu problema, que se manifesta em cada nova instalação do Debian 7.

    
por luke_g 24.01.2014 / 13:30

4 respostas

20

Parece que nenhuma localidade é gerada. Você selecionou pl_PL.UTF-8 corretamente em dpkg-reconfigure locales pressionando espaço na linha correspondente?

Se sim, a linha

pl_PL.UTF-8 UTF-8

em /etc/locale.gen não é comentado (= não começa com # ). Se você precisar corrigir isso, também precisará executar locale-gen para gerar as localidades. Sua saída deve ser:

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

Se ele não gerar as localidades que você deseja gerar, parece haver algo errado com seu sistema. Um motivo pode ser que você tenha localepurge instalado. Se não houver arquivos em /usr/share/locale/pl/LC_MESSAGES ou /usr/share/locale/pl_PL/LC_MESSAGES , este é o caso ou seu sistema está quebrado.

    
por 24.01.2014 / 13:56
9

primeiro:

sudo apt-get purge locales

então:

sudo aptitude install locales

e o famoso:

sudo dpkg-reconfigure locales

Isso libera o sistema de localidades e, em seguida, reinstala os códigos de idioma e reduz a versão libc6 de 2.19 para 2.13, que é o problema. Em seguida, configura as localidades novamente.

    
por 18.09.2014 / 07:44
4

A maneira rápida e fácil (embora signifique mais disco usado que outros):

apt install locales-all
    
por 23.05.2017 / 10:47
0

tente executar

locale -a

se você tiver

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

A solução para esta situação é instalar o pacote locales (do glibc package [1]) no debian flavor ou glibc-all-langpacks no CentOS / Fedora

[1] link

    
por 11.09.2016 / 07:24

Tags