Linux终端界面显示中文乱码或方块

虚拟机:VirtualBox 4.3.0

环境:CentOS 6.4 Basic Server

  这个问题,坑了博主好久好久,百度谷歌点到鼠标都快废了,主要是因为想要解决鸟哥服务器篇介绍文字浏览器links使用时,打开网站显示不出中文的问题。

  博主目前比较确定的是,系统本身的tty环境是不支持中文显示的,我已经亲测好多次,安装中文支持包,安装中文字体,各种设置,但最终还是显示方块(如果观点或操作有误,跪请大神指教)。后来发帖求助博客园和MSDN,不少大牛们推荐安装fbterm或zhcon这样的支持中文显示的控制台。

  解决方案:

  1.安装fbterm

  2.安装中文字体

  3.配置fbterm  

  一、安装FbTerm:

    fbterm所在网址:https://code.google.com/p/fbterm/

    1.首先安装编译fbterm依赖包

    yum -y install freetype-devel fontconfig-devel

    2.下载fbterm压缩包

    wget  http://fbterm.googlecode.com/files/fbterm-1.7.0.tar.gz

    3.将fbterm源代码解压缩至/usr/local/src目录下

    tar -zxvf  fbterm-1.7.0.tar.gz -C /usr/local/src

    4.不解释
    cd  /usr/local/src/fbterm-1.7

    5.建立MakeFile
    ./configure

    6.编译安装
    make && make install

    我在运行建立MakeFile命令时,出现了下面的错误:C++ compiler cannot create executables。很明显,C++编译环境没有,执行yum install gcc-c++即可解决该问题。同时,还会有两个警告,gpm is not exict,gpm是鼠标支持,我装了之后感觉没什么用,而且都在终端操作了,要什么鼠标啊,所以后来又卸载了。第二个警告没搞懂,跪求大神指导。反正,同学们请忽略这些警告就好了,错误要解决,警告无视之。

    7.进入fbterm终端

    fbterm

    至此,如果不出意外,你的fbterm已经可以支持中文显示了,但由于fbterm的默认字体mono显示不怎么好看,于是决定换一下字体

  二、安装字体

    1.将自己喜欢的字体文件放到Linux字体目录(/usr/share/fonts)下,博主在fonts目录下又创建一个目录truetype,通过U盘拷贝将自己喜欢的字体放在这个目录。具体操作过程如下:

      (1).cd /usr/share/fonts

      (2).mkdir truetype   ---用来放置从虚拟机外复制过来的字体文件

      (3).mount -t vfat -o iocharset=cp950 /dev/sdb1 /mnt/Udisk    ---U盘挂载操作,不要照抄啊,挂载点和设备名可能不一样

      (4).cd /mnt/Udisk

      (5).cp ./msyh.ttf /usr/share/fonts/truetype    ---从win7上复制的微软雅黑字体(我的最爱哈哈)

      (6).cd /usr/share/fonts/truetype

      (6).umount /mnt/Udisk   ---取消挂载,拔掉U盘

    2.更改字体文件权限

    chmod 644 ./msyh.ttf 

    3.注册字体

    mkfontscale
    mkfontdir
    fc-cache -fv

    4.查看系统已有字体

    fc-list|less   ---能找到Microsoft YaHei哦,说明字体安装成功了

    说明:看到有的文章说要先创建字体的连接文件之后再注册字体,经博主亲测,连接文件完全没有必要,直接复制进去就可以注册字体使用了。

  三、配置fbterm

    FbTerm的配置文件是~/.fbtemrc,用vim打开编辑保存后就可以使用了,配置文件的内容一看就懂,我的设置如下:

    设置fbterm显示字体:font-names=Microsoft YaHei

    设置fbterm字体大小:font-size=20

  

转载于:https://www.cnblogs.com/CherishU/p/3400448.html

你可能感兴趣的:(Linux终端界面显示中文乱码或方块)