近期想开发一个个人网站,购买了阿里云的 ECS 云服务。操作系统是 ubuntu,在使用过程中遇到下面这个问题:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_TIME = "zh_CN.UTF-8",
LC_MONETARY = "zh_CN.UTF-8",
LC_ADDRESS = "zh_CN.UTF-8",
LC_TELEPHONE = "zh_CN.UTF-8",
LC_NAME = "zh_CN.UTF-8",
LC_MEASUREMENT = "zh_CN.UTF-8",
LC_IDENTIFICATION = "zh_CN.UTF-8",
LC_NUMERIC = "zh_CN.UTF-8",
LC_PAPER = "zh_CN.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_ALL to default locale: No such file or directory
网上对这个问题有很多解决方案,但我都试了始终解决不了根本,有些甚至不起作用……起作用的也只是从表面来看像解决问题了,但其实是把问题影藏了。
比如在远程主机上的/etc/ssh/sshd_config文件里,将AcceptEnv LANG LC_*这行注释掉
然后重启远程的sshd,然后退出远程后,重新ssh上来。
这时,远程主机不会把客户机的语言环境(zh_CN.UTF-8)带过来
当然就不会再有报错,可惜的是,远程主机是无法正确显示中文的,问题还在,只是被影藏了。
幸运的是最后找到了一个可以彻底解决的方法,如下:
apt-get install language-pack-zh-hans
没错,就是执行这个简单的命令就完事了。
为了方便后面的同学也遇到同样的问题而焦头烂耳。转发一下,方便大家后面遇到可以轻松的解决!