Когда я подключаюсь к своему 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