#¿Como Reparar locale warning from Perl? - How can I fix a locale warning from Perl?
###Cuando ejecuto perl, obtengo el siguiente warning:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
##¿Como puedo reparar esto?
Lo que sucede es que el S.O. no sabe nada de en_US.UTF-8
. por que al usar ssh
para conectarse a un host mas antiguo, desde un cliente más nuevo.
En el cliente es común encontar en el archivo /etc/ssh/sshd_config
AcceptEnv LANG LC_*
Esto permite a los clientes propagar dentro de nuevas sesiones los valores de estas variables de entorno. La advertencia dará una pista sobre cómo solucionarla, si no se requiere la configuración regional completa:
% env LANG=C perl -e exit
%
O con Bash
$ LANG=C perl -e exit
$
Tambien se puede comentar la siguiente linea en el archivo /etc/ssh/sshd_config
, en la maquina local
Para resolverlo en forma permanente, podemos elegir una de estas opciones:
- En el host antiguo, establecer la variable de entorno
LANG
en el archivo de inicialización de la SHELL. - Modificar en el entorno del lado del cliente, por ejemplo: en lugar de
ssh hunter2
, usa el comandoLANG=C ssh hunter2
.