Linux Module
模块安装
手动安装模块时有insmod和modprobe,它们的区别是:
- insmod在加载外部模块时要指定模块的绝对路径。多个外部模块有符号依赖时,要按依赖关系顺序加载。此时可以没有/lib/modules/kernel_release_version目录。
- modprobe后边只需要去跟模块名称,它自动去分析/lib/module/kernel_release下module.dep文件。 去根据依赖自动加载。
/lib/modules/目录以及下面的文件再module_install 创建的。 外部模块会被安装在extra下,最后使用depmod命令在kernel_version目录下生成外部模块依赖文件module.dep.
所以如果使用insmod,/lib/modules/下的模块依赖文件可以没有。只要按照顺序insmod就可以正常工作。
如果使用modprobe, 那么/lib/modules下的内容必须有。