插入scsi_wait_scan时出错 - 模块格式无效

时间:2012-12-18 08:42:05

标签: linux linux-kernel boot initrd

该系统是CentOS 6.3。

我编译了一个新内核,并在目标机器上安装了生成的rpm。 从内核启动时,我收到了问题标题中的错误。

我已经提取了相应的initramfs并比较了输出:

   modprobe --dump-modversions /path/to/scsi_wait_scan.ko

对应/ boot / symvers 中的条目 - *。所有符号校验和都适合,包括 module_layout

有没有办法从内核中提取 symvers

1 个答案:

答案 0 :(得分:0)

我发现了问题。

简短回答

问题是我在已安装的内核rpm(A)上安装了内核rpm(B), 没有先删除它。

拒绝回答

scsi_mod.ko仅由(A)拥有。在安装(B)时,scsi_mod.ko位于/ lib / modules /中。 在(B)的安装后脚本中创建intramfs时。 depmod决定scsi_wait_scan.ko取决于scsi_mod.ko,而两者都是针对不同的配置构建的。

稍后在启动机器时,内核开始运行initramfs。这反过来modprob'ed scsi_wait_scan.ko。 modprobe试图作为一个后缀scsi_mod.ko加载,这不适合当前的内核,因此导致我看到的错误。