cómo reparar el error de configuración regional

11

Acabo de hacer una nueva instalación de ubuntu usando debootstrap. Cuando lo hago sudo aptitude upgrade, recibo este mensaje de error:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "en_US:en",
    LC_ALL = (unset),
    LANG = "en_US.ISO-8859-1"
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

¿Alguien puede decirme cómo resolver este problema? Veo muchas publicaciones similares a esta en línea, pero ninguna parece resolver el problema.

Estoy usando Ubuntu 14.04 LTS. Gracias.


FYI:

$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.iso88591
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

y

$ locale
LANG=en_US.ISO-8859-1
LANGUAGE=en_US:en
LC_CTYPE="en_US.ISO-8859-1"
LC_NUMERIC="en_US.ISO-8859-1"
LC_TIME="en_US.ISO-8859-1"
LC_COLLATE="en_US.ISO-8859-1"
LC_MONETARY="en_US.ISO-8859-1"
LC_MESSAGES="en_US.ISO-8859-1"
LC_PAPER="en_US.ISO-8859-1"
LC_NAME="en_US.ISO-8859-1"
LC_ADDRESS="en_US.ISO-8859-1"
LC_TELEPHONE="en_US.ISO-8859-1"
LC_MEASUREMENT="en_US.ISO-8859-1"
LC_IDENTIFICATION="en_US.ISO-8859-1"
LC_ALL=
usuario1527227
fuente
1
Esto ya se respondió aquí askubuntu.com/questions/162391/how-do-i-fix-my-locale-issue Resumen: defina LC_ALL en / etc / default / locale
h7r

Respuestas:

6

El debootstrapno crea un entorno local. Así que usamos algo más como configuración regional. Usa este comando:

sudo locale-gen en_US.ISO-8859-1

¡Espero que esto ayude!


fuente
No, también aptitudees válido. Su respuesta no le dará ningún cambio al OP.
Danatela
2
Si bien eso puede resolver el error de configuración regional, le brinda un sistema con codificación latin1, que no es adecuado en Ubuntu.
Gunnar Hjalmarsson
Además, en ~/.kde.env/setlocale.sh, estableceexport LANG=en_US.UTF-8
user1527227
11

Un escritorio de Ubuntu debe configurarse con codificación UTF-8. Por alguna razón, su sistema intenta establecer la configuración regional latin1 en_US.ISO-8859-1. Realmente deberías cambiar eso.

Tal vez la configuración se lleva a cabo en /etc/default/locale.

Donde sea que ocurra, cámbielo a

LANG=en_US.UTF-8

o de lo contrario te encontrarás con varias sorpresas relacionadas con el entorno local.

Gunnar Hjalmarsson
fuente
¿Estás seguro de que es el que debes usar? ¿Cómo lo sabes?
user1527227
@ user1527227: Bueno, casi. ;) Porque AFAIK en_US.UTF-8viene pregenerado en cada escritorio de Ubuntu. Pero puede verificarlo fácilmente ejecutando el locale -acomando. Sería bueno si editaras la pregunta y agregaras el resultado de ese comando.
Gunnar Hjalmarsson
Agregué la información que solicitaste.
user1527227
1
@ user1527227: Ok, y ahí podemos ver en_US.utf8en la locale -asalida. Mi consejo para cambiar de en_US.ISO-8859-1a en_US.UTF-8stands.
Gunnar Hjalmarsson
Gracias. ¿Sabes cómo hacer eso exactamente? No veo /etc/default/locale. ¿Puedo correr sudo locale-gen en_US.utf8?
user1527227
8

La solución permanente del problema local es exportar las variables locales en el .bash_profilearchivo. También puede usar el /etc/profilearchivo en lugar de .bash_profile.

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile

No se olvide de sourcela .bash_profiley seguir la secuencia de comandos de fácil configuración.

Aquí está el script que soluciona el problema de la configuración regional

Ajeet Khan
fuente
3

Esto funciona para mi.

  1. export LANGUAGE=en_US.UTF-8
  2. export LANG=en_US.UTF-8
  3. export LC_ALL=en_US.UTF-8
  4. sudo locale-gen en_US.UTF-8
  5. sudo dpkg-reconfigure locales
Airat Kazanbaev
fuente
1

Lo que funcionó para mí es lo siguiente:

export LANGUAGE=en_US.UTF-8 export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 sudo locale-gen en_US.UTF-8 sudo dpkg-reconfigure locales

Para una solución permanente puedes poner

export LANGUAGE=en_US.UTF-8 export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8

en tu .zshrco.bashrc

Árbitro

  1. https://jee-appy.blogspot.com/2016/02/set-locale-on-ubuntu-permanent-solution.html
  2. https://www.thomas-krenn.com/en/wiki/Perl_warning_Setting_locale_failed_in_Debian
alpha_989
fuente