Recibo este mensaje cada vez que hago algo como iniciar o detener un servicio.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_MESSAGES = "en_US.UTF-8",
LANG = "en_US.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
(Reading database ... 21173 files and directories currently installed.)
Removing bind9 ...
* Stopping domain name service... bind9 [ OK ]
Processing triggers for man-db ...
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
¿Cómo soluciono este error?
command-line
server
locale
HackToHell
fuente
fuente
Respuestas:
Primero ejecute
locale
para enumerar las configuraciones regionales definidas actualmente para la cuenta de usuario actual:Luego, genere la configuración regional que falta y reconfigure las configuraciones regionales para tomar nota:
¡Ahora ya no verá ningún error!
fuente
en_GB
de manera predeterminada, pero lo configura enen_US
. Usted tiene que comentar de forma manualen_GB
y elimine el comentarioen_US
en/etc/locale.gen
. Vea mi respuesta askubuntu.com/a/790373/25388 en el hardware Raspberry Pi 3b y el sistema Raspbian Jessie.Nada de lo sugerido anteriormente funcionó en mi caso (Ubuntu Server 12.04LTS). Lo que finalmente ayudó fue poner en el archivo
/etc/environment
:Por alguna razón faltaba. Las salidas para locale y otros comandos aparecieron como si las variables estuvieran definidas correctamente. En otras palabras, no dé por sentado que todo lo básico se declara donde debería declararse.
fuente
/etc/default/locale
./etc/default/locale
y no más advertencias. Graciassudo sh -c "echo 'LC_ALL=en_US.UTF-8\nLANG=en_US.UTF-8' >> /etc/environment"
echo
debe ejecutarse con la interpretación de escapes de barra invertida habilitada. Esto es lo mismo que el tuyo pero con lo mencionado anteriormente arreglado:sh -c "echo -e 'LANG=en_US.UTF-8\nLC_ALL=en_US.UTF-8' > /etc/default/locale"
Deberían desaparecer después de emitir:
dpkg-reconfigure
reconfigura los paquetes después de que ya se han instalado. Páselo los nombres de un paquete o paquetes para reconfigurar. Hará preguntas de configuración, como cuando se instaló el paquete por primera vez.fuente
en
,en_AU
,en_CA
,en_GB
están presentes por defecto, pero noen_US
?dpkg-reconfigure
.makemessage
necesita esto. Esto funcionó perfectamente! Gracias.LC_ALL
configurarlo correctamente.Simplemente agregue lo siguiente a su
.bashrc
archivo (suponiendo que esté usando bash)fuente
LC_ALL
finalmente pude usarsudo dpkg-reconfigure locales
.Este es un problema común si se conecta de forma remota, por lo que la solución es no reenviar su ubicación. Editar
/etc/ssh/ssh_config
y comentarSendEnv LANG LC_*
línea.fuente
/etc/ssh_config
sed -e '/SendEnv/ s/^#*/#/' -i /etc/ssh/ssh_config
(útil para el aprovisionamiento del servidor)Hay un comando para eso:
Se actualiza
/etc/default/locale
con los valores proporcionados.fuente
locale
aún no muestra ningún valor utf.locale-gen
. Antes, uno tiene que hacerapt-get install locales
.Lo que funcionó para mí en 12.10 fue esto:
Esto después
dpkg-reconfigure locales
no produjo resultados.fuente
chroot
bajo debian. Gracias :)No olvide salir de su sesión SSH (o su X11) saliendo y volviendo a iniciar sesión. Todas estas sugerencias no funcionaron para mí a menos que volviera a iniciar sesión ...
fuente
Para Ubuntu 12.10, ninguno de los anteriores funcionó, excepto la solución de ratzs. Recomiendo agregar esto a su archivo /etc/bash.bashrc:
fuente
Estaba atascado en un estado extraño en el que mi máquina local está configurada
es
y, por lo tanto, la máquina remota (víavagrant
) había sido aprovisionada en un estado no manejado. Por lo tanto, tuve que usar el manualexport=
solo para facilitar un éxitodpkg-reconfigure
. Entonces el sistema está bien.fuente
dpkg-recofigure
pantallas mojibake.Escribí un script bash para solucionar el problema anterior. Las respuestas anteriores son útiles, pero configurar las variables locales simplemente exportando los valores en la variable de shell funcionará solo para una sesión. Resolví este problema permanentemente exportando las variables locales en el archivo .bash_profile. También puede usar el
/etc/profile
archivo en lugar de.bash_profile
.No se olvide de
source
la.bash_profile
y seguir la secuencia de comandos de fácil configuración.fuente
Puedes probar:
¿Dónde
ru_RU
está el código de tu país?fuente
La respuesta actual aceptada no es suficiente en la estrategia de solución de problemas porque puede tener un error humano. Configura su sistema
en_US
pero haen_GB
habilitado/etc/locale.gen
como lo hice en el hilo aquí para Raspberry Pi 3b. Debería tener habilitadas todas las configuraciones regionales utilizadas/etc/locale.gen
.Solo había
en_GB.UTF-8 UTF-8
habilitado/etc/locale.gen
. Debería haber habilitado allí soloen_US.UTF-8 UTF-8
porque otros comandos se ejecutan para ello. Así que comenté GB y Estados Unidos, y todo funciona ahoraAhora, no obtengo esos errores de configuración regional con ningún comando.
Sistema: Raspbian Jessie
Hardware: Raspberry Pi 3b
fuente
Como se dijo aquí en el Wiki de Debian , puede editar
/etc/locale.gen
y agregar todas las configuraciones regionales (o descomentarlas, tenía una lista de todas las configuraciones regionales pero todas excepto la que usé como comentarios) para las que desea tener soporte en su sistema. Luego, ejecutapara actualizar las configuraciones regionales en su sistema. Ahora, todas las configuraciones regionales que agregó / descomentaron
/etc/locale.gen
están disponibles en su sistema sin ninguna advertencia.fuente
Si usa el entorno KDE, verifique el
setlocale.sh
archivo en~/.kde/env/
:fuente
Es posible que deba ejecutar
sudo dpkg-reconfigure
también la aplicación que ha instalado mientras la configuración de "configuración regional" no ha sido válida / no coincide.Mientras que la configuración regional del sistema se configuró incorrectamente, instalé
vim
. Más tarde, cuando se fijó configuración regional del sistema vi una situación quevim
estaba mostrando caracteres UTF-8 de forma incorrecta como símbolos extraños, mientras quenano
yless
se muestra correctamente. Corriendopareció solucionar el problema después de que se corrigió la configuración del sistema.
También noté lo mismo que ya se mencionó: es posible que deba desconectar / volver a conectar SSH para que los cambios sean visibles.
fuente
Agregar el siguiente texto
~/.profile
me funciona:Estoy usando el servidor Ubuntu 16.04 LTS de 64 bits en Linode.
fuente
Esto funcionó para mí cuando tuve el mismo problema (basado en la solución proporcionada por dman ):
fuente
>
lugar de>>
) parece una respuesta a dman's. En realidad, no sé cuál es la mejor o la mejor opción, pero si tiene alguna idea sobre esto, podría ampliar esta respuesta con más información. (Sin embargo, no es necesario).