出现这个问题一般要么是模块位置放错了,要么是modules.dep文件中没有对应模块记录导致无法装载
解决办法
首先查看/lib/module/内核版本目录下是否存在需要装载的模块。内核版本可以通过uname -r获取到。
在上述目录下执行depmod指令,对该目录下的模块进行扫描,这个操作过后该目录下的模块将被记录在modules.dep文件下。这个时候再执行modprobe xxx对模块进行装载.
xxx是由于版本不同可能是不含ko后缀的文件名。例如,我要装载device.ko,那么在depmod之后,只需要执行modprobe device命令就可以了。最好含后缀和不含后缀的都试一下。
使用modprobe一般是用于装载存在依赖关系的多个模块时才使用的命令。如果只是装载单个模块执行insmod就足够了,而且还不需要复制模块到指定位置。