【Linux】修改Linux字符集

背景

公司新项目使用docker进行部署,以centos7为基础镜像进行java服务部署,部署之后发现服务日志中出现中文乱码现象。乱码问题一般都是文件编码和打开编码不一致导致,文件已经确定使用的是UTF-8,于是开始查看服务器编码。
【Linux】修改Linux字符集_第1张图片
使用locale命令查看服务器采用的字符编码,经过确认服务器采用的是POSIX编码,而此编码不支持中文,需要修改成zh_CN.utf8格式。

安装服务器编码

# 查看服务器本地已经安装的编码
locale -a

【Linux】修改Linux字符集_第2张图片
可以看到centos镜像中只有C、POSIX和en这几种格式,并不支持中文编码,需要使用yum源进行安装

# 安装中文字符集
yum install -y kde-l10n-Chinese
yum reinstall -y glibc-common

# 加载中文字符集
localedef -i zh_CN -f UTF-8 zh_CN.UTF-8

# 确认安装结果
locale -a

【Linux】修改Linux字符集_第3张图片

修改服务器编码

可以看到中文字符集已经安装完成,接下来需要进行本地配置,编辑locale.conf文件,将下面内容增加至行尾

vim /etc/locale.conf

【Linux】修改Linux字符集_第4张图片

# 加载配置立即生效
source /etc/locale.conf

# 同步修改属主字符集配置
echo 'set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936' >> /root/.vimrc;echo 'set termencoding=utf-8' >> /root/.vimrc;echo 'set encoding=utf-8' >> /root/.vimrc

【Linux】修改Linux字符集_第5张图片

你可能感兴趣的:(Linux,运维,服务器,linux,服务器,运维)