语言环境不能通过SSH连接正确设置

我有一个安装了几个语言环境的debian服务器,de_DE,en_GB和en_US。 我希望能够通过sshlogin并获取相应的语言环境设置(在我的情况下en_US,别人不同)我运行dpkg-reconfigure语言环境,并selectNone作为默认语言环境,如下所述: http:// wiki .debian.org / Locale 。 现在,当我通过SSHlogin时,我仍然得到de_DE语言环境。

LANG=de_DE.utf8 LANGUAGE=de_DE.utf8 LC_CTYPE="de_DE.utf8" LC_NUMERIC="de_DE.utf8" LC_TIME="de_DE.utf8" LC_COLLATE="de_DE.utf8" LC_MONETARY="de_DE.utf8" LC_MESSAGES="de_DE.utf8" LC_PAPER="de_DE.utf8" LC_NAME="de_DE.utf8" LC_ADDRESS="de_DE.utf8" LC_TELEPHONE="de_DE.utf8" LC_MEASUREMENT="de_DE.utf8" LC_IDENTIFICATION="de_DE.utf8" LC_ALL=de_DE.utf8 

我用ssh -v进行检查,ssh客户端确实发送了LANGvariables

 debug1: Sending environment. debug1: Sending env LANG = en_US.UTF-8 

如何区域设置仍然设置为DE,我怎样才能禁用这种行为?

编辑:现在工作。 有人强制设置/ etc / profile中的区域设置…

在〜/ .profile中指定适合您需要的用户首选语言环境configuration?

此外,为了节省您的烦恼,请停止从您的客户端(/ etc / ssh / ssh_config,注释SendEnv LANG …)转发语言环境并停止接受服务器(/ etc / ssh / sshd_config)。

或者,如果您愿意,可以使用所需的选项设置〜/ .ssh / environment文件。 您必须在服务器的/ etc / ssh / sshd_config文件上启用PermitUserEnvironment。

好的,我明白了。 有人在/etc/profile硬编码了LC_ALLLANGvariables,所以其他的东西都被忽略了。 删除这些之后,语言环境现在根据ssh发送的环境进行设置。

在我的情况下,当用sshlogin时,没有任何通常的默认语言环境或环境variables设置似乎工作。 这是因为我在sshdconfiguration中禁用了PAM会话控制。

确保你已经设置好了

 UsePAM yes 

/etc/ssh/sshd_config文件中,至less这对我/etc/ssh/sshd_config