系统环境:

[root@host conf]# more /etc/issue

Red Hat Enterprise Linux Server release 5 (Tikanga)
Kernel \r on an \m
 
问题现象:
[root@ha]# locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES 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="en_US.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=en_US.UTF-8
 
输入locale命令后,出现如上所示现象,同时,系统中文本文件的编码无故改变,什么原因?
 
解决:

这个问题发生在redhat系统下,归根结底是由于系统缺少相应的glibc包导致的,这个问题就是由于缺少glibc-common导致的,可以查看此时的系统是没有/usr/lib/locale/locale-archive文件的。
根据系统的版本,安装glibc-commo包即可解决问题,我安装的版本是:glibc-common-2.5-12.i386.rpm。
安装完成后,问题解决,locale后,显示正常。