В моем Kubuntu или Debian есть такой файл /etc/default/locale
:
# File generated by update-locale LANG="pl_PL.UTF-8"
Упоминается в разных /etc/pam.d/*
файлах. Это фрагмент /etc/pam.d/sshd
:
# Read environment variables from /etc/environment and # /etc/security/pam_env.conf. session required pam_env.so # [1] # In Debian 4.0 (etch), locale-related environment variables were moved to # /etc/default/locale, so read that as well. session required pam_env.so user_readenv=1 envfile=/etc/default/locale
Теперь из man 5 pam.conf
:
Когда приложение предоставления привилегий с поддержкой PAM запускается, оно активирует свое присоединение к PAM-API. Эта активация выполняет ряд задач, наиболее важными из которых являются чтение файла (ов) конфигурации:
/etc/pam.conf
. В качестве альтернативы это может быть содержимое/etc/pam.d/
каталога. Наличие этого каталога приведет к игнорированию Linux-PAM/etc/pam.conf
.
Когда пользователь входит в систему через SSH, sshd
разветвляется, и в этот момент он /etc/pam.d/sshd
выполняет свою работу. Видите man 8 pam_env
, он отвечает за установку / удаление переменных среды. Я не был уверен, будут ли sshd
вилы до или после приема переменных от клиента, поэтому я сделал простой тест. Я закомментировал эту единственную строку на моем сервере Debian:
session required pam_env.so user_readenv=1 envfile=/etc/default/locale
и проблема, которую вы указали, была исправлена (проверено LANG=C ssh myserver
в моем случае). Я раскомментировал строку, и проблема снова появилась.