centos 6.x下jira显示饼图乱码

近期由于KVM迁移,把原先jira的一套软件也由原来物理机迁移到了虚拟机上。操作系统版本也由centos5换成了centos6.4 ,jira同时也做了次升级,换成了jira v6.0.7 。安装完成并打上了中文语言包,一切正常。不过后面在使用过程中,发现饼图显示为口口这样的乱码 。

jira-garbled

网上查询到的方法有两个,如下:

方法一:

yum -y install fonts-chinese fonts-ISO8859* 
<br />

将上面的字体安装完成后,重启jira就OK了,不过该方法在centos5.x上可以,到centos6.x中就不灵了,上面的包在centos6.x中不存在。而如果从centos5.x中下载好rpm包通过rpm -ivh安装时,又有如下报错:

root@jira-361way.com:[/root]rpm -ivh fonts-chinese-3.02-12.el5.noarch.rpm
warning: fonts-chinese-3.02-12.el5.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID e8562897: NOKEY
error: Failed dependencies:
        /usr/sbin/chkfontpath is needed by fonts-chinese-3.02-12.el5.noarch
<br />

依赖包,显然不少 。即外是字体库,本装着通过rpm -ql fonts-chinese查看都安装在什么地方,再一一放到centos6.x下面的路径里,执行下面的命令就OK了:

# mkfontscale
# mkfontdir
# fc-cache -fv
<br />

不过fonts-ISO8859包太多,这样做太麻烦不小,下下策,暂不考虑 。

方法二:

find / -name *.ttf
1,查找到相关路径
2,拷贝windows下的simsunb.ttf,先把这个文件拷贝到其他位置
3,然后你可以通过SecureCRT中的rz命令将其上传至你需要的位置,如果你的的/usr/share/fonts/TTF/下没有zh_CN文件夹,请自己创建,我的是:/usr/share/fonts/TTF/zh_CN/TrueType 下,并重新命名为simsun.ttf
4,然后执行"ttmkfdir  . ”,这个是创建fonts.dir 【ttmkfdir -d 字体所在目录 -o 字体所在目录/fonts.scale】
5,cp  fonts.scale  fonts.dir
6,执行fc-cache &&  /etc/init.d/xfs restart
7,查看是否安装成功了,查找sim   ,pc-list|grep –i sim
<br />

以上方法一般是在linux下美化字体显示时用到的方法,也先不考虑。即然是中文显示有问题,肯定是语言包不全的问题,通过yum group把相关的语言包一次装齐不就 OK了 。

方法三:

yum groupinstall chinese-support
<br />

如果要装其他语言包可以将chinese换成japanese,korean,assamese, bengali, chinese, gujarati, hindi, kannada, malayalam, marathi, oriya, punjabi, sinhala, tamil 等。安装完成后重启jira ,再看饼图,显示OK 。

总结:方法三是自己琢磨出来的,当然其也是方法一的变通 。所以在处理无论是系统或者是软件的新版本时,如果同上一版本出现了差别,先别急着用原来的方式处理。既然改成目前的状态,定有他的道理。尽量以新的方法解决老的问题 。

<a href="https://www.361way.com/wp-content/uploads/2013/09/jira-garbled2.jpg"><img src="https://www.361way.com/wp-content/uploads/2013/09/jira-garbled2.jpg" alt="jira-garbled2" class="alignnone size-full wp-image-2740" height="306" width="409" /></a>&nbsp;

2013-10-15号后记:上次提到的第三种方法在centos6上正常使用了有几天 。不过后面不知道系统上做了什么改变,导致在重启jira后饼图再变乱码。于是改用方法二测试,发现方法二上写的并不完全对。新增字体的方式本身并不存在问题,存在问题的是路径写的不对。这里使用的方法是一和二的合并,最终成功完全解决该问题。具体操作是将一台centos5.X上的fonts下的chinese复制到centos6.X上。

[root@mail data1]# rpm -ql fonts-chinese
/etc/ghostscript
/etc/ghostscript/CIDFnmap.zh_CN
/etc/ghostscript/CIDFnmap.zh_TW
/etc/ghostscript/FAPIcidfmap.zh_CN
/etc/ghostscript/FAPIcidfmap.zh_TW
/etc/ghostscript/cidfmap.zh_CN
/etc/ghostscript/cidfmap.zh_TW
/usr/share/doc/fonts-chinese-3.02
/usr/share/doc/fonts-chinese-3.02/doc
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl-big5.txt
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl-gb.txt
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl.txt
/usr/share/doc/fonts-chinese-3.02/doc/release.txt
/usr/share/fonts/chinese
/usr/share/fonts/chinese/TrueType
/usr/share/fonts/chinese/TrueType/fonts.cache-1
/usr/share/fonts/chinese/TrueType/fonts.dir
/usr/share/fonts/chinese/TrueType/fonts.scale
/usr/share/fonts/chinese/TrueType/ukai.ttf
/usr/share/fonts/chinese/TrueType/uming.ttf
/usr/share/fonts/chinese/fonts.cache-1
/usr/share/fonts/chinese/misc
/usr/share/fonts/chinese/misc/fonts.alias
/usr/share/fonts/chinese/misc/fonts.cache-1
/usr/share/fonts/chinese/misc/fonts.dir
/usr/share/fonts/chinese/misc/fonts.scale
/usr/share/fonts/chinese/misc/taipei16.pcf.gz
/usr/share/fonts/chinese/misc/taipei20.pcf.gz
/usr/share/fonts/chinese/misc/taipei24.pcf.gz
/usr/share/fonts/chinese/misc/vga12x24.pcf.gz
/usr/share/fonts/zh_TW
/usr/share/fonts/zh_TW/TrueType
/usr/share/fonts/zh_TW/TrueType/bsmi00lp.ttf
<br />

上面是centos5.x上的fonts-chinese所包含的文件内容。其中简体中文字体是/usr/share/fonts/chinese ,将其在centos6.x上相应的路径保存即可解决该问题。

以下内容都是解说部分:其实在centos6上也已存在uming和ukai两种字体,其分为两个包,分别存在fons下的cjkuni-ukai和cjkuni-uming目录,不从centos5.x上复制,新建chinese/TrueType下存两种字体也行。如果是用繁体中文,就把zh_TW文件夹一并复制。ghostscript是一个pdf要使用的一个包,在centos6.x中已和字体分开成另外的包。

至于fonts-ISO8859*相关的文件,不用另行复制,在centos6.X上也有相应的包,不过是在/usr/share/X11/fonts/下 (如果发现只复制chinese还不行的,可以在centos5.x上将fonts-ISO8859*也复制过去,其在/usr/share/fonts/ISO8859-2目录中)。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注