使用CentOS系统的时候,经常会遇到ssh客户端连接CentOS系统乱码问题,这次我们就来针对这个问题提出个解决方案。
CentOS系统配置完成后,正常能显示中文,查看后发现支持utf-8字符集。
而putty和ssh secure shell连接却发现乱码,主要表现为执行vim乱码,su命令乱码。
使用$ locale命令查看,出现如下:
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
解决方案:
1. 对于putty0.6版本
a.修改CentOS系统上/ect/sysconfig/i18n内容为:LANG="zh_CN.UTF-8"
b.修改putty的configuration窗口内windows->Appearance->font setting为新宋体,10号字。
修改Translation的Receive data assumed to be in which character set为:
UTF-8。(因为下来列表中没有中文字符集,GB2312或cp936)。
这样修改完成后,putty就正常支持中文显示了。
2.对于ssh secure shell版本。
a.将配置的字体改成宋体,但是还是乱码,
b.修改CentOS系统的/ect/sysconfig/i18n内容为:
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
---以上内容是网上找到了,照着写了。
发现连接ssh secure shell可以正常显示中文。
用$ locale查看,上面看到的配置都变成了GB18030编码了
但是又用putty连接,却又变成了乱码,我理解因为putty仍然用的是utf8编码,
而配置ssh secure shell时,将CentOS系统改成gb18030编码了,所以乱码。
c.到服务器上,重新启动了CentOS系统,发现显示中文也正常。
3. 如果发现ssh secure shell有问题,或相关的引起问题,则重新配置putty使用,
配置方案可以参考上述配置。
结论:
因为ssh secure shell窗口符合window显示,所以暂时定为使用ssh secure shell客户端。
而其也绑定了ftp上传功能,相对方便。
变化:考虑建立mysql等多处使用utf-8编码,所有仍然使用putty客户端,系统编码改成utf-8
(责任编辑:IT) |