![perl 设置区域设置失败](https://linux22.com/image/591105/perl%20%E8%AE%BE%E7%BD%AE%E5%8C%BA%E5%9F%9F%E8%AE%BE%E7%BD%AE%E5%A4%B1%E8%B4%A5.png)
有没有什么方法可以一劳永逸地解决这里提到的问题:http://www.thomas-krenn.com/de/wiki/Perl_warning_Setting_locale_failed_unter_Debian
我一直在通过以下方式修复它
export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales
但每当我重新启动时,错误就会再次发生。这是一个 Ubuntu 11.04 VPS
答案1
每当你通过 SSH 登录时,你的语言环境(您正在连接的机器上的语言环境)被发送到服务器。我假设您已de_DE.UTF-8
在本地设置。每当您在登录的机器上执行 Hetzner 的代码片段时,您暂时地切换到不同的 LC,一切正常(暂时)。
首先查看/etc/default/locale
。您应该在其中找到LANG="en_US.UTF-8"
(如果没有,请添加它)。
我建议安装你的服务器上的区域设置。请尝试de_DE.*
在dpkg-reconfigure locales
对话框中选择任意一个。
或者您可以将export
命令(而不是其他命令!)附加到~/.bashrc
服务器上,这样无论何时登录,它们都会自动设置。
或者,您可以禁用 SSH 服务器上的接受LC_*
和变量(您的服务器应该会恢复到默认设置)。因此,从LANG
中删除它们 - 或取消注释整个 - 。AcceptEnv
/etc/ssh/sshd_config