CentOS 乱码问题解决
首先要区别3个概 :编码集、字符集、字体 是完全不同的东西,我们要解决的是字符集问题。
当一个系统初始化完毕后,会生成一个 /usr/lib/locale/locale-archive 文件,这个是字符集二进制文件,是系统不同语言运行的核心,通过命令 locale -a 可以看到当前文件中支持的语言
locale 命令可以看到当前的字符集情况
localedef -i zh_CN -f UTF-8 zh_CN.UTF-8 可以通过如下命令生成到/usr/lib/locale/locale-archive文件中
locale -a |grep zh_CN 确认了我们系统支持了中文的能力
fc -list 确认我们支持当前系统支持的字体
对于系统已经支持中文的条件下,只需要选择对就行了
centos7专门设置了 /etc/locale.conf文件
回到locale命令
当前系统语言环境
# echo $LANG
en_US.UTF-8
# locale
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=
虽然安装了中文语言包但本机的语言环境并不是中文,需要修改locale.conf配置文件:
# vim /etc/locale.conf 修改配置文件
# source /etc/locale.conf 生效配置
# localectl set-locale LANG=XXX 使用命令修改locale.conf配置文件
验证配置:
[root@node2 ~]# date 2022年 01月 05日 星期三 21:52:48 CST
备注:本人亲测,修改完配置文件,还是出现乱码,重启服务器后解决,这个需要注意。
参考链接:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)