我刚刚安装了CentOS 6,每当我通过SSH远程登录系统时,都会收到以下错误:
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8)
当我在命令行上键入“locale”时,我得到以下输出:
locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory LANG=en_US.UTF-8 LC_CTYPE=UTF-8 LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=
可能是什么问题?我该如何解决这个问题?
在ssh上的服务器上,您是否通过环境变量设置了语言环境?在查看我的CentOS 6安装时,我能找到的唯一支持的语言环境被标识为en_US.utf8(使用locale -a命令发现).这可能是问题吗?
在我的测试中,当我将LC_ALL环境变量设置为en_US.UTF-8,ssh’d到服务器时,我的locale命令的输出在我的情况下被设置为POSIX.这与我在ssh’ing之前没有设置(即取消设置)LC_ALL变量的情况相同.
当我将LC_ALL变量设置为en_US.utf8或en_US.utf-8,ssh’d到我的CentOS 6框时,语言环境的输出与源框上设置的输出相同.
注意我也没有使用UTF的上限.