终于解决Oracle10GR1在linux下安装界面的乱码问题
linux的桌面仍然是“想说爱你不容易”,问题还是不少,安装oracle 10G 时,除了配置环境参数很麻烦以外(号外:windows咋就什么都不用配呢,所以说windows的易用和用户友好性,借用马云的话来说是“戴着望远境都 找不到对手”,开源界要继续努力呀),出现的界面有什么”口口“,中文全显示为乱码了。
其实这倒不是linux的问题,系统的中文已经显示得很好了,我用的是suse 10(我觉得最满意的linux发行版),应该是oracle的问题,不过归根结底,还是要算Java的问题了,不同于linux,Oracle和 Java分别由两大商业软件公司oracle与Sun开发,也有这么多年的发展历史了,还出现这种问题我觉得太不应该了,太不“用户友好”了。
牢骚发泄完毕,开始想解决的办法,google上搜到最多的是下载javacn包,安装字体,然后改font.properties文件,不仅步骤挺多,在ubuntu与suse上就有些文件名或里面的内容都不完全相同,况且系统都已有安装JAVA也有中文字体了,没必要从头再来,就算安全按那个步骤来, 在其他发行版都未必能完全走下去,总之我试了一下,没有达到效果,也就放弃了这个方法。
不过我仍然先采用了登录时选择语言为english的方法,在英文环境下安装了oracle,但不解决乱码总是不爽,而且这又发现了DBCA与netca界面的乱码问题了,看来,逃避不是办法。
好在搜到了一篇博客,讲了一下这个乱码的原因,就是ORACLE调用自己的JRE,java找不到中文字体,只要修改jre的 font.properties里面的字体指向,或者满足里面指定的路径和文件名就可以了,其实我去改font.properties时发现里面并没有文 中所讲的中文字体方面的设置,有中文字体设置的是font.properties.zh_CN_redhat之类的文件,版本特多,不知道用哪一个,按文 中改了redhat.3的那一个,无效,直接改font.properties,也无效,最后灵机一动,把改好的文件CP成 font.properties.zh_CN文件,发现dbca与netca的中文显示正常了。不过oracle的安装界面仍然是乱码。
Oracle安装目录的jre改了,系统自带的JRE也改了,可还是乱码,问题出在哪里呢?打开runInstaller脚本想探个究竟,看得不是太明 白,所以也没什么获得,继续google,终于找到一篇《解决Oracle10gR2安装界面乱码问题》的文章,一看就感觉看到了希望,原来安装界面的 jre在安装盘的stage/Components/oracle.swd.jre文件夹中,只要把一个配置好的 font.properties.zh_CN文件插入安装包中,安装时就能识训别中文了。操作看似简单,实现起来也难。又遇到了两个问题,一是文中所指安 装界面用的包filegroup2.jar竟然找不到,我只看到all_except_bin.jar, all_except_bin.jar.ORIG,bin.jar三个包,何解呢?
确认了路径没有错,但就是只有这三个包,用文件归档器打开一看,发现all_excepte_bin.jar内容是jre的那些东东,那就先添加进这个包 试试,直接从文件归档器里把font.properties.zh_CN给添加了进来,带着兴奋的心情再去安装oracle,竟然还是显示方块!靠,怎么回事嘛?
再检查发现添加的文件的路径是/,而其他文件则各有各的路径,是不是解压之后路径不对,所以仍然找不到正确的字体配置文件呢?于是想改路径,但在 gnome的文件归档器(事实上系统中显示的是“文件滚动器“)显示的只是压缩包的全部文件,根本就不是像winrar那样按目录结构显示的,相比之下简 陋太多了。那怎么办呢?要么是解压后再添加文件,再打包,要么是放到windows下用winrar直接添加。我就采用了第二种,在winrar中展开到 lib目录,添加文件,然后传到linux下进行文件替换。
再次安装,终于见到了久违的oracle中文安装界面,费了这么大的力终于解决了问题,先是高兴了一下,然后是觉得有点苦涩,为了一个界面的中文显示竟然 花了这么多的心思,回想起自己在配置X-windows、linux的中文字体显示、调声音、安装lrc歌词显示等许多抓狂的历史画面,我又忍不住想对 linux的桌面进行批评了,我并不是microsoft的拥趸,但我很认同windows所做到的用户友好与人性化,盖茨的“永远不向复杂性低头”说得 好,我喜欢linux,尊敬那些为开源做出贡献的人,但对linux目前的版本太杂,不统一不标准、硬件支持(声卡、显卡)差、图形界面很慢又耗资源、应 用软件吸引力不强等问题深感担忧,坦率地说,我认为linux的这种开源模式会一直存在,这是一面旗帜,但也不会在桌面上有突破性的发展,游击队还是难以与正规军抗衡的。我并不赞成所有的软件都要开源、免费,程序员除了为理想,也 要为生活。关键的是,用户能得到适当的价格,能选择性价比高的产品,而不是microsoft这样的一家独大,完全由他定价。我期望的理想模式,是苹果公 司能全面进军PC的操作系统,让mac os X与windows直面竟争,形成一种像Intel与AMD、nVidia与ATI这样的两强争霸的局面,那样,受益的就是用户了。当然,这只是想像了。
注:以上纯粹是抒发一下个人感受,无意挑起争论。