问题描述及结果
公安边防局的asianux3.2系统,一台机器重启后出现kernel panic,然后10秒后重启。
系统于2010年六月份安装完毕运行至今,1月24日重启出现这种情况。另一台同样机器未重启,运行正常。
系统开启了iscsi链接iscsi存储。并安装了ibm tsm监控软件和一个hp的软件。
后确定是hp软件的一个服务导致kernel panic
此服务原来调用/opt/hp/hp-openipmi/下的ipmi_si.ko,后更改为调用系统的ipmi_si.ko解决。 |
现场分析过程:
单用户模式正常,进入3模式会出现附件图片中的现象。
首先进入单用户模式,按照/etc/rc3.d/s*中相关服务的顺序,依次启动。最后确定是hp-health服务启动后出现kernel panic
(此时如果设置hp-health不启动也可以解决,但是此服务还有其他用处)
设置此hp-health服务开机不启动,进入3模式,查看/etc/init.d/hp-health中有调用ipmi相关模块,这和附件图片 中屏幕打印信息中的ipmi相对应。
为了验证,用modprobe加载ipmi_si和ipmi_devintf两个模块,系统并未panic。难道不是ipmi模块的问题?
继而启动hp-health服务并且打印执行过程(
sh -x /etc/init.d/hp-health start &>/tmp/ipmi.log)
hp-health服务正常启动,系统并未panic。
通过ipmi.log发现此脚本验证是否已存在ipmi相关模块,如果存在即继续启动,否则将加载
/opt/hp/hp-openipmi /hp-openipmi/下的ipmi相关模块。
为了验证系统的ipmi相关模块和/opt/hp中相关ipmi模块是否影响kernel panic,做如下操作
停止hp-health服务,卸载ipmi相关模块,再次启动hp-health服务并打印执行过程,系统kernel panic。
原因确定是hp-health服务调用
/opt/hp/hp-openipmi/hp-openipmi/下的ipmi相关模块后出现 kernel panic。
解决办法:
在/etc/init.d/hp-health最开始添加modprobe -a ipmi_si ipmi_devintf
即先加载系统的ipmi相关模块,然后运行hp-health服务。
另:
之前为何不出现kernel panic未知。
另一台机器如果重启是否也出现kernel panic未知。