centos中文乱码解决

一、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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯飙的蜗牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值