Editar: Debí haber mencionado en mi pregunta original que estaba usando el cliente de MacPorts SSH, ya que resultó que había dos causas principales. Ver mi propia respuesta a continuación.
Cuando SSH en mi máquina OSX, no está configurando la configuración regional correctamente:
LANG=
LC_COLLATE="C"
LC_CTYPE="C"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=
Esto debería estar usando una configuración regional UTF-8. Debería verse así:
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
Estoy ejecutando OSX 10.11.6 (El Capitán), y habilité el servidor SSH en Preferencias del sistema.
Estoy usando masilla como cliente en mi máquina con Windows. Cuando utilizo la misma configuración de masilla para conectarme a un servidor Linux, la información de configuración regional está bien.
Cuando ejecuto un terminal local en la máquina OSX, la configuración regional está bien. Si entonces ssh localhost
, tengo el mismo problema: no se ha establecido ninguna configuración regional.
Parece que mi servidor OSX SSH está ignorando o descartando la información local del cliente. Tengo lo siguiente en mi (no modificado) /etc/ssh/sshd_config
:
AcceptEnv LANG LC_*
Que yo sepa, eso es todo lo que se requiere.
Mi configuración de masilla está enviando TERM=xterm-256color
, que se está cumpliendo; es solo la información del entorno local que no funciona, y para reiterar, sucede cuando I ssh localhost
de OSX a sí mismo, así que no creo que el problema sea la masilla aquí.
No aceptaré respuestas que sugieran establecer la configuración regional en mi .profile
; Hay muchas respuestas aquí que sugieren eso, pero es un truco, no una solución.