如何configurationmodprobe来查找我的模块?

我试图让一个内核模块在启动时加载。

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

如果我运行modprobe /path/to/module.ko ,它找不到该模块。 我知道modprobe使用了一个configuration文件,但是在/ etc / modules中join/path/to/module.ko之后,我无法加载模块。

什么是正确的configuration?

你可以将你的模块的符号连接到标准path,所以depmod将会看到它,你可以像其他模块一样加载它。

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

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

无论如何,我认为正确的configuration是将模块复制到标准path。

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

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

遵循以下步骤:

  1. 将hello.ko复制到/ lib / modules /'uname -r'/ misc /
  2. 在/lib/modules/'uname-r'/modules.dep中添加misc / hello.ko项
  3. sudo depmod
  4. sudo modprobe你好

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