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_COLLATE to default locale: No such file or directory
一、Cannot set LC_CTYPE to default locale 解决(make localedata/install-locales )
1、问题描述 locale时提示下面错误
01.locale:Cannot set LC_CTYPE to default locale: No such file or directory
02.locale:Cannot set LC_MESSAGES to default locale: No such file or directory
03.locale:Cannot set LC_ALL to default locale: No such file or directory
ssh登陆弹出如下错误
-bash: warning: setlocale: LC_CTYPE: cannot change locale (zh_CN.UTF-8)
2、问题产生原因
centos 6.5 系统
需求装一个需要glibc-2.14支持命令组件,安装glibc-2.14
tar -zxvf glibc-2.14.tar.gz
cd glibc-2.14
mkdir build
../configure --prefix=/usr/local/glibc-2.14
make && make install
ln -sf /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
(提示 如果直接删除移动/lib64/libc.so.6文件会有错误Can't open configuration file /usr/local/etc/ld.so.conf)
安装完成后,支持 glibc-2.14,但是 提示如上错误
并且有中文乱码、svn、perl、date等命令不能应用问题
解决问题:
1、设置字符集编码支持utf-8
source /etc/sysconfig/i18n
查看locale,为如下内容
每次链接都会报错(setlocale: LC_CTYPE: cannot change locale (zh_CN.UTF-8))
并且按照网络上方法尝试解决,1小时。2小时。3小时。无解决
忽然想到是不是glibc和locale的库版本不兼容造成的该问题
查看glibc的wiki,最后在相关locale中查找到链接https://sourceware.org/glibc/wiki/Locales?highlight=%28install-locales%29
根据提示重新编译 glibc-2.14
../configure --prefix=/usr/local/glibc-2.14
make && make install && make localedata/install-locales
问题解决!!!
二、现象:cat 没问题,vim中文乱码
错误:bash: 警告:setlocale: LC_TIME: 无法改变区域选项 (zh_CN.UTF-8)
原因分析:
系统已经设置了默认地区_语言.字符集为zh_CN.UTF-8,但是在系统中没有定义对应的locale文件,所以只需要手动生成这个locale文件即可!
解决办法:
1)# vim /etc/environment #添加下面两行内容
LANG="zh_CN.UTF-8"
LC_ALL=
2)source这个文件内容:
# source /etc/environment
3)# vim /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
4)然后执行如下命令,生成 en_US.UTF-8这个字符集对应的locale文件:
# localedef -v -c -i zh_CN -f UTF-8 zh_CN.UTF-8
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/zhangxueleishamo/article/details/77978300