insmod/lsmod/modinfo/modprobe/depmod工具使用

insmod lsmod modinfo

insmod一个模块的时候出现问题: Invalid module format
insmod/lsmod/modinfo/modprobe/depmod工具使用
通过modinfo查看模块信息,发现模块的vermagic与内核的版本是不匹配的。
insmod/lsmod/modinfo/modprobe/depmod工具使用
第一种解决办法是使用目标板子上所用的内核重新编译模块
第二种办法是insmod -f xxx.ko或者insmod --force-vermagic xxx.ko (但是现在的insmod好像不支持这些参数)


modprobe depmod

如何实现modprobe,使用modprobe来加载这些模块
modprobe不会知道module之间的依赖性,而是通过读取/lib/modules/2.6.xx/modules.dep文件获知,这个文件是通过depmod建立的。开发板上modules.dep文件生成步骤如下:
步骤1: mkdir -p /lib/modules/uname -r
步骤2:将源码linux-imx目录下的modules.order和modules.builtin复制到/lib/modules/uname -r目录下
步骤3:执行depmod -a会生成modprobe的依赖文件modules.dep


参考文章

  1. Building modules for a precompiled kernel