如何配置modprobe来查找我的模块?

时间:2008-10-22 13:59:35

标签: kernel kernel-module insmod

我正在尝试在启动时加载内核模块。

如果我运行insmod /path/to/module.ko,它运行正常。但每次重新启动时都必须重复此操作。

如果我运行modprobe /path/to/module.ko,则无法找到该模块。 我知道modprobe使用配置文件,但即使将/path/to/module.ko添加到/ etc / modules之后我也无法加载模块。

什么是正确的配置?

3 个答案:

答案 0 :(得分:61)

您可以将模块的符号链接设置为标准路径,因此depmod将会看到它并且您可以将其加载为任何其他模块。

sudo ln -s /path/to/module.ko /lib/modules/`uname -r`
sudo depmod -a
sudo modprobe module

如果将模块名称添加到/ etc / modules,则会在您启动时加载它。

无论如何,我认为正确的配置是将模块复制到标准路径。

答案 1 :(得分:6)

我认为关键是将模块复制到标准路径。

一旦完成,modprobe只接受模块名称,所以不要使用路径和“.ko”扩展名。

答案 2 :(得分:6)

请按照以下步骤操作:

  
      
  1. 将hello.ko复制到/ lib / modules /'uname-r'/ misc /
  2.   
  3. 在/lib/modules/'uname-r'/modules.dep中添加misc / hello.ko条目
  4.   
  5. sudo depmod
  6.   
  7. sudo modprobe hello
  8.   

modprobe将检查modules.dep文件中的任何依赖项。