我做modprobe时找不到模块

时间:2016-01-14 22:09:01

标签: linux linux-device-driver

我正在尝试安装此模块:https://github.com/mkottman/acpi_call

我做了一个make,make install。

然后我看到acpi_call.ko位于/lib/modules/4.3.3-5-default/extra/

我做的时候

  

modprobe acpi_call

我得到了

  

modprobe:FATAL:在目录中找不到模块acpi_call   /lib/modules/4.3.3-5-default

尝试将acpi_call.ko放入/lib/modules/4.3.3-5-default,但结果相同。

我想让它持久化,以便在我重新启动时加载模块。我认为只有modprobe才有可能。

3 个答案:

答案 0 :(得分:16)

如果模块.ko文件确实位于/lib/modules/4.3.3-5-default/extra/下且4.3.3-5-default确实是您当前的内核版本,则问题可能只是您需要运行depmod来重新创建模块依赖列表。运行(以root身份):

depmod -ae

再次尝试modprobe模块。

答案 1 :(得分:1)

我的解决方案是独特的,但是在我的系统中,我重建了内核并取出了一个模块。我安装了vendors模块,但无法使用vendors模块启动系统。在我的情况下,我忘记移动所有的/ lib / modules信息,因此modules.builtin仍具有要升级的模块。从modules.builtin手动删除模块并执行depmod -a解决了我的问题。

答案 2 :(得分:0)

尝试在源目录中运行make && sudo make install。这应该使用内核头文件附带的Makefile将模块安装在正确的位置。