在 google 和 stackoverflow 上搜索过,都找不到这个“简单”问题的答案。
背景:我有一台运行 centos 6.5 内核 2.6.32-431.29.2.el6.x86_64 的 Supermicro 服务器。我一直在尝试配置 IPMI,经过多次故障排除后,我意识到问题可能是由于 ipmi_si(和 ipmi_msghandler)模块不存在。我相信获取这些模块的唯一方法是升级内核:
[blah@localhost]$ yum provides "*/ipmi_msg*.ko"
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: centos.mirror.constant.com
* epel: ftp.osuosl.org
* extras: linux.cc.lehigh.edu
* updates: mirror.metrocast.net
kernel-debug-2.6.32-504.el6.x86_64 : The Linux kernel compiled with extra debugging enabled
Repo : base
Matched from:
Filename : /lib/modules/2.6.32- 504.el6.x86_64.debug/kernel/drivers/char/ipmi/ipmi_msghandler.ko
kernel-2.6.32-504.el6.x86_64 : The Linux kernel
Repo : base
Matched from:
Filename : /lib/modules/2.6.32- 504.el6.x86_64/kernel/drivers/char/ipmi/ipmi_msghandler.ko
...etc
同意吗?我宁愿获得这些模块而不升级内核。此外,假设我必须升级内核,有人能确认原因仅仅是这些模块与当前内核不“兼容”吗?
谢谢。
答案1
您的系统上 ( Centos 6.5 kernel 2.6.32-431
)ipmi_si
模块不存在,因为它内置在内核中。使用以下命令仔细检查:
[root@host ~]# cat /proc/kallsyms | grep init_ipmi_si
ffffffff814fb086 t init_ipmi_si
ffffffff81d26f50 t __initcall_init_ipmi_si6
init_ipmi_si
是模块的初始化函数ipmi_si
。同样适用于ipmi_msghandler
(查找ipmi_init_msghandler
)。因此,您的问题一定与其他问题有关。
您ipmi_devintf
是否已加载?您有/dev/ipmiX
设备吗?