前言
今天一个同事,估计是以前没有使用过虚拟机(VMware Workstation)安装Debian,更谈不上如何设置Debian的环境了。他在安装后系统后,啥也没设置就直接安装mysql,结果发现设置密码的界面出现很多麻将块一样的乱码,问我怎么处理。我之前是有弄过,但今天还是给小小坑了一把,所以写下此文记录一下。
环境说明
VMware Workstation版本:
Debian版本:
root@ Tue Oct 28 17:08:23 ~
$ uname -a
Linux lizy 3.2.0-4-686-pae #1 SMP Debian 3.2.63-2 i686 GNU/Linux
建议的软件源:
root@ Tue Oct 28 17:08:27 ~
$ cat /etc/apt/sources.list
deb http://ftp.debian.org/debian wheezy main contrib non-free
deb-src http://ftp.debian.org/debian wheezy main contrib non-free
deb http://mirrors.163.com/debian wheezy main non-free contrib
deb-src http://mirrors.163.com/debian wheezy main non-free contrib
deb http://mirrors.163.com/debian wheezy-proposed-updates main contrib non-free
deb-src http://mirrors.163.com/debian wheezy-proposed-updates main contrib non-free
deb http://mirrors.163.com/debian wheezy-updates main contrib non-free
deb-src http://mirrors.163.com/debian wheezy-updates main contrib non-free
deb http://mirrors.163.com/debian-security wheezy/updates main contrib non-free
deb-src http://mirrors.163.com/debian-security wheezy/updates main contrib non-free
解决方案
注意:
1、以下命令均需要root权限
2、安装软件需要联网(虚拟机安装好后,使用桥接的方式一般都能上网)
3、软件源也需要重新配置,默认的软件源是安装不了的,可以参考上面的配置,国内163的源还挺快的,更新也比较及时。
由于只安装了最简单的系统,所以需要先安装locales,命令为:
aptitude install locales
然后进行配置,命令为:
dpkg-reconfigure locales
这里,粗心的人如果没看清楚界面上的使用说明,就会被小坑一把:这里的配置,空格键是选择,enter键是确认。如果直接按了回车键,就跳到了默认语言设置页面,导致配置中文失败。
对于我来说,选择以下几种编码已经够用:
en_US.UTF8
zh_CN GB2312
zh_CN GBK GBK
zh_CN UTF-8 UTF-8
在设置默认编码时选择:
zh_CN UTF-8 UTF-8
这时已经将语言编码设置好了。按理说,终端的中文不会再乱码了,但是……
同事没下面回答,只是发了一张让我蛋碎的图:
坑
挠破头皮之后,终于让我发现了原因:
在VMware Workstation安装好Debian后,由于窗口比较小,很多人(包括我)都习惯用SecureCRT、Xshell、putty等Telnet、SSH、rlogin、纯TCP以及串行接口连接软件远程连到Debian进行操作,但这些软件默认的字体和字符编码都是英文的。如果服务端是默认字段为中文编码的系统,那么终端就会出现很多麻将块一样的乱码。
处理方法是(以SeecureCRT为例):
设置路径为:会话属性--终端--外观
设置内容:标准字段和精确字段都设置为中文字段,字符编码修改为简体中文GBK