centos fat centos fatal server error_java

先上异常提示信息。

Handler dispatch failed; nested exception is java.lang.Error: Probable fatal error: No physical fonts found.错误

应该是最近的操作导致系统丢失了部分东西导致的,找不到就找个有的,从那里复制一份过来就可以了。

背景

用了阿里云的ESC服务器。一天在担任小钻风例行巡山的时候。阿里云提示安全系数只有85分了。为了系统的安全,点进去一看,发现阿里云提示一批软件要升级,小编慌的一匹,小编有点懒,同时处于对阿里云的信任。点了最上面的那个复选框,然后批量处理了下。

centos fat centos fatal server error_运维_02

事故现场

1、在后台登录页面需要获取验证码,发现验证码死活出不来。

调试接口一看,报了个“Handler dispatch failed; nested exception is java.lang.Error: Probable fatal error: No physical fonts found”错误!

2、使用CRT去远程操作的时候,发现删除键的光标变成了空格键的了,但是实际上功能是正常的。

问题定位

网络上大部分都说这个是因为没有安装字体。但是这个在升级之前是好好的呀!

查看其它的对应的服务器,访问没有任何异常,所以基本上可以确定问题是因为升级导致的问题。

解决思路

基本上是两腿走路,一个是自己解决,同时上报阿里云,让阿里云参与,看能不能快速解决掉。

第一条路:阿里云解决

最快的方式是提工单,但是阿里云现在的提工单的流程很流氓。你是不能自己提交工单的,可能我们没有达到他们的级别。到提工单功能地方,智能用智能在线(机器人)沟通(提工单)。非人类解决不了,再人工排队。

排到了发现那个售后工程师的回复太逗了,说他们文档上没有对应的解决方案,你自己想办法解决,去网络上找解决方案(刷锅大师)。

centos fat centos fatal server error_运维_03

后来说要投诉他们了,才帮转的系统工单。人啊,还是不能太善良了,换句话来讲,你的善良应该还要保留一点点锋芒。

centos fat centos fatal server error_服务器_04

 既然别人指望不上了,那就自己动手解决吧。

第二条路:自己动手解决

Google上不了,只能找度娘了。找到的解决问题的思路,基本上都是说没有安装字体。需要自己安装下对应的字体。我记得刚开始部署openJDK的时候,已经把它都处理好了。既然大家都说这样处理,那是不是有可能升级软件的时候,把这个给覆盖掉了呢?

姑且当活马医吧。但是yum install之后,发现install不成功,使用vi打开的时候,发现很多东西都是乱码。看到这个情况,初步推断应该是vi对应的操作环境被替换掉了。

1、把.vi的环境改下呗。网上的提示都是使用TERM=xterm;export TERM的方式,但是使用的时候还是报“'Terminal entry not found in terminfo”的错误。

错误信息:

Terminal entry not found in terminfo
'unknown' not known. Available builtin terminals are:
builtin_gui
builtin_riscos
builtin_amiga
builtin_beos-ansi
builtin_ansi
builtin_pcansi
builtin_win32
builtin_vt320
builtin_vt52
builtin_xterm
builtin_iris-ansi
builtin_debug
builtin_dumb
defaulting to 'ansi'

都已经到了这个地步了,基本上应该是可以判定字体出问题了,但是又安装不了怎办?

解决思路有两个:

1、见效最快:重装系统,哈哈哈,笑死

2、找个正常的,把对应的字体相关的替换下就可以了,应该是少了包导致的。

还好公司有几台配置一致的ECS。打开另外一台一看(路径在/usr/share/fonts下)。好家伙还真是少了个dejavu字体包。从另外正常的服务器上把fontconfig和fonts拿过来,然后重启下java程序。正常了...

问题解决了,然后在阿里云看工单,发现工程师还在处理中..............

总结

沟通问题方面

1、阿里云上提工单,不要和售后说太多,太多了,这个事情就有可能不了了之了。能快速解决的问题,不要拖的太久,建议直接和售后说解决不了就走投诉,快速进入到工单。不要像这次处理,前面沟通走流程,走了2-3个小时。能动手就别吵吵

2、不要把所有的希望都寄托他人,自己不强,都是迷障。

3、不要迷恋权威,说不定阿里云和你沟通的不知道是不是工程师呢,是不是专业人士呢?是不是人还说不定呢,说不定是机器人2.0呢?大胆的往前走,两岸都是风景。

处理问题方面

4、出问题不可怕,关键是要看懂问题表达的意思,错误提示越多,定位问题就越快。俗话说的好,字越少,事越大。网络上的答案挺多的,把错误信息分别拿过去搜索下关键字,基本上就可以组合出你的答案了。关键是你提的问题对不对,你有没有学会提问?

5、不要迷恋权威平台,阿里上面的分数不够,你点开详细看,你会发现,很多项扣分都是因为你没有开通某某服务,某某服务都是需要收费的。