Linux模块加载
Linux系统加载哪些内核模块,和配置文件有关系。
模块保存在/lib/modules/下。
使用/etc/modules-load.d/来配置系统启动时加载哪些模块。
使用/etc/modprobe.d/下配置模块加载时的一些参数,
也可以利用blacklist来屏蔽模块的自动加载。例如,在安装NVIDIA显卡驱动时,需要屏蔽开源的nouveau驱动,就可以将其加入blacklist。
如何添加一个自己编译的模块
将编译好的.ko模块放到目录/lib/modules/`uname -r`/
注意特别重要的一步:在命令行输入命令depmod,此命令是用来更新模块启动配置表的,没有depmod这个命令,就无法使用modprobe命令来启动模块。
为*.modules文件加可执行权限,我这里这就执行:chmod 755 helloworld.modules
开机自动加载
配置启动时加载哪些内核模块,一般位于/etc/modules-load.d/。
比如,对于virtual box虚拟机:
$ cat /etc/modules-load.d/virtualbox.conf
vboxdrv
vboxnetflt
vboxnetadp
vboxpci
目录允许多个配置文件存在并同时生效。例如,anything.conf文件里面就记录了deepin-anything需要加载的模块vfs_monitor:
$ cat /usr/lib/modules-load.d/anything.conf
vfs_monitor