ssh客户端连接centos乱码问题 - 转
centos5.2配置完成后,正常能显示中文,查看后发现支持utf-8字符集。
而putty和ssh secure shell连接却发现乱码,主要表现为执行vim乱码,su命令乱码。
使用$ locale命令查看,出现如下:
解决方案:
结论:
如果还不行试试:
下面两个个命令:
//其实英语已经安装了。只要定义一下就可以了。
或者你可以试一下,在出现乱麻的时候
#export
#export
然后看一下
如果还不行再试试下面:
系统:英文版的Redhat Enterprise AS 4.0
症状:英文显示没问题;中文输入法也没问题;中文网页显示为乱码,不管是用 解决: 安装fonts-chinese-3.02-9.6.el5.
给大家推荐个下载地址:这个网址里有你要的那两个文件:
http://ftp.dc.volia.com/pub/CentOS/CentOS/
或者用这两个直接下载链接: http://ftp.dc.volia.com/pub/CentOS/CentOS/fonts-chinese-3.02-9.6.el5.noarch.rpm http://ftp.dc.volia.com/pub/CentOS/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm 此时相关如下: [root@localhost ~]# rpm -qa | grep fonts- | wc -l 14 [root@localhost ~]# rpm -qa | grep fonts- bitmap-fonts-0.3-5.1.1 xorg-x11-fonts-misc-7.1-2.1.el5 fonts-chinese-3.02-9.6.el5 xorg-x11-fonts-base-7.1-2.1.el5 xorg-x11-fonts-75dpi-7.1-2.1.el5 urw-fonts-2.3-6.1.1 xorg-x11-fonts-100dpi-7.1-2.1.el5 bitstream-vera-fonts-1.10-7 ghostscript-fonts-5.50-13.1.1 xorg-x11-fonts-ISO8859-1-75dpi-7.1-2.1.el5 xorg-x11-fonts-Type1-7.1-2.1.el5 xorg-x11-fonts-ISO8859-1-100dpi-7.1-2.1.el5 dejavu-lgc-fonts-2.10-1 xorg-x11-fonts-truetype-7.1-2.1.el5 [root@localhost ~]# cat /etc/sysconfig/i18n LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" [root@localhost ~]# 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= [root@localhost ~]# 网上提供的消除中文乱码的方法如下,只是一种治标的方法,应该是先查看有没有相关的字体包已经安装,再考虑更改如下设置: 将i18n内容改为 LANG="zh_CN.GB18030" ------------------------------------ 下述命令如果有下述信息说明装有中文字体: [root@localhost ~]# xlsfonts | grep gb 字体所在目录:/usr/share/locale [root@localhost ~]# cd /usr/share/locale ................................................ drwxr-xr-x 4 root root 4096 Dec 14 2006 zh_CN [root@localhost locale]# cd zh_CN
LC_MESSAGES目录中是
MO (Machine Object) files,可以理解为中文库文件,示例如下: [root@localhost zh_CN]# cd LC_MESSAGES/ [root@localhost LC_MESSAGES]# msgunfmt bindconf.mo -o /tmp/ttt.po [root@localhost LC_MESSAGES]# [root@localhost LC_MESSAGES]# cat /tmp/ttt.po| more msgid "" msgstr "" "Project-Id-Version: zh_CN\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-09-11 09:59+0800\n" "PO-Revision-Date: 2005-12-07 11:33+1000\n" "Last-Translator: \n" "Language-Team: <zh@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" msgid "" "\n" "\n" "\n" "\n" "\n" msgstr "" "\n" "\n" "\n" "\n" "\n" msgid "" "\n" " Note that enabling the update forwarding feature on a slave server may " "expose master servers relying on insecure IP address based access control to " "attacks." msgstr "" "\n" "请注意,在一个从服务器上启用更新转发功能可能会使那些依赖基于访问控制的不安全" "的 IP 地址的主服务器受到恶意攻击。" ----more---- 定义区域语言的配置文件位置: [root@localhost ~]# cd /usr/share/i18n/ [root@localhost i18n]# ll locales/zh_* [root@localhost i18n]# man localedef 用来生成区域设置 修改系统编码变换设置,告诉系统如何将汉字编码转换为系统内部码: [root@localhost ~]# locate gconv-modules XFree86设置: [root@localhost ~]# locate locale.dir 环境变量的设置: [root@localhost ~]# echo $LANG |
修改/etc/sysconfig/i18n内容为:
LANG="en_US.UTF-8"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
export LC_ALL=en_US