centos升级glibc版本回退后,出现locale报错,yum执行中文乱码
locale: Cannot set LC_CTYPE to default locale: No such file or directory
原因:
检查系统中有无对应的locale文件,locale文件存在,说明不是no such file导致
# locale -a|grep en_US
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8
再检查locale版本,原来是自动命令卸载,版本回退不彻底,有些残余软链,不同命令读取的glibc版本不相同,要手动清除
解决:
cd /usr/lib64
找出高版本的软链残留
ls -alh | grep "\->" | grep 高版本 | awk -F ' ' '{print $11 " " $9}'
软链替换成低版本
sln xxx xxx && sln xxx xxx && ...