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
localepara 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_GBde manera predeterminada, pero lo configura enen_US. Usted tiene que comentar de forma manualen_GBy elimine el comentarioen_USen/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/localey no más advertencias. Graciassudo sh -c "echo 'LC_ALL=en_US.UTF-8\nLANG=en_US.UTF-8' >> /etc/environment"echodebe 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-reconfigurereconfigura 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_GBestán presentes por defecto, pero noen_US?dpkg-reconfigure.makemessagenecesita esto. Esto funcionó perfectamente! Gracias.LC_ALLconfigurarlo correctamente.Simplemente agregue lo siguiente a su
.bashrcarchivo (suponiendo que esté usando bash)fuente
LC_ALLfinalmente 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_configy comentarSendEnv LANG LC_*línea.fuente
/etc/ssh_configsed -e '/SendEnv/ s/^#*/#/' -i /etc/ssh/ssh_config(útil para el aprovisionamiento del servidor)Hay un comando para eso:
Se actualiza
/etc/default/localecon los valores proporcionados.fuente
localeaú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 localesno produjo resultados.fuente
chrootbajo 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
esy, 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-recofigurepantallas 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/profilearchivo en lugar de.bash_profile.No se olvide de
sourcela.bash_profiley seguir la secuencia de comandos de fácil configuración.fuente
Puedes probar:
¿Dónde
ru_RUestá 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_USpero haen_GBhabilitado/etc/locale.gencomo 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-8habilitado/etc/locale.gen. Debería haber habilitado allí soloen_US.UTF-8 UTF-8porque 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.geny 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.genestán disponibles en su sistema sin ninguna advertencia.fuente
Si usa el entorno KDE, verifique el
setlocale.sharchivo en~/.kde/env/:fuente
Es posible que deba ejecutar
sudo dpkg-reconfiguretambié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 quevimestaba mostrando caracteres UTF-8 de forma incorrecta como símbolos extraños, mientras quenanoylessse 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
~/.profileme 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).