大棚棱瓜种植技术视频:ssh客户端连接linux乱码问题

来源:百度文库 编辑:偶看新闻 时间:2024/04/28 00:23:52

centos5.2配置完成后,正常能显示中文,查看后发现支持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

allen:遇到问题,找到答案,就是进步。

本文来自CSDN博客,转载请标明出处:http://www.360doc.com/

===========================================================

问题的原因:

装上了Ubuntu 9.04,系统环境更新为中文。想在windows下ssh远程登录Ubuntu,于是按照如下步骤。

1、在Ubuntu下安装openssh-server

sudo apt-get install openssh-server

2、在windows下安装ssh client,但是问题随之而来。开始时,我安装了ssh secure shell client(SSC),但是登陆到了Ubuntu上,发现中文显示是乱码。于是百度之,知道了,不能用SSC来连接中文环境的Ubuntu,原因是Ubuntu中文环境的字符集编码是utf8的,但是SSC的设置编码,没有utf8的,所以不能够修改SSC的参数,来达到显示中的目的。但是,还是有解决办法的,在Ubuntu中,利用命令:locale,来查看系统的语言环境,具体的可以查看 关于locale的设定,为什么要设定locale 。看过之后,你会明白,由于SSC的字符集小于ubuntu系统环境的字符集(utf8),用文章中的那句话:用了不正确的密码本来解密,肯定得不到想要的结果。这个时候,继续百度之,有很多的文章,说明应该把系统的环境改成什么样的,这里有一篇例子ssh客户端连接centos乱码问题,请自行解决。

这个是利用SSC来连接ubuntu出现的中文乱码问题的解决方案。但是这样修改系统环境,让人很不爽,所以还有另一种解决方案,换一个ssh客户端。具体的可以参见SSH Secure Shell Client的替代方,另外,除了文章中说的putty那个ssh连接的客户端软件外,还推荐一个xshell,和putty差不多的设置方式,也能够解决显示中文的问题,而不用修改ubuntu系统。