Когда я подключаюсь к своему Linux-серверу (Ubuntu 14.04), используя putty, у меня возникают некоторые проблемы, потому что SSH-соединение всегда использует ANSI_X3.4-1968 качестве charset (вывод locale charmap).
Однако моя система настроена на использование de_DE.UTF-8 который можно увидеть по cat /etc/default/locale:
LANG=de_DE.UTF-8
LC_MESSAGES=POSIX
Используемый профиль соединения putty использует UTF-8 качестве Удаленного набора символов (Окно -> Перевод). Я также попытался использовать значение de_DE.UTF-8 здесь, но без изменений.
Странно то, что когда я locale charmap в физическую консоль с картой исполнения локали там, я получаю правильный и ожидаемый результат: UTF-8 .
Почему я получаю разные настроенные кодировки с помощью Putty (v0.67) и физической консоли? Следовательно, это проблема конфигурации замазки или проблема на стороне сервера Linux?
Обновление 1:
Я также сравнил /etc/pam.d/sshd с сервером второго аналогичного сервера, который не подвержен этой проблеме, и оба файла были идентичны. То же самое верно для файла /etc/ssh/ssh_config (оба файла содержат строку SendEnv LANG LC_*).
Я также выполнил следующие команды, чтобы убедиться, что локали не являются дефектными:
sudo locale-gen --purge
sudo update-locale LANG=de_DE.UTF-8
