I just installed CentOS 6 and whenever I login to the system via SSH remotely, I get the following error:
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8)
When I type "locale" on the command line, I get the following output:
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=
What can be the problem? How can I solve this issue?
Best Answer
On the server you ssh from do you have a locale set via an environment variable? In looking at my CentOS 6 installation, the only locale that I can find supported is identified as
en_US.utf8
(discovered usinglocale -a
command). Could this be the problem?In my testing, when I set the
LC_ALL
environment variable toen_US.UTF-8
, ssh'd to the server, the output of my locale command was set toPOSIX
in my case. This the same as when I have NOT set (i.e. unset) theLC_ALL
variable before ssh'ing.When I set my
LC_ALL
variable toen_US.utf8
oren_US.utf-8
, ssh'd to my CentOS 6 box, the output of the locale was the same as what was set on the source box.Notice I used no caps for UTF also.