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
本文详细介绍了Linux系统中内核模块的加载与管理方法,包括模块的存放位置、配置加载方式、自编译模块的添加步骤及开机自动加载的设置。通过/etc/modules-load.d/和/etc/modprobe.d/两个目录,可以分别指定启动时加载的模块和模块加载时的参数。
1743

被折叠的 条评论
为什么被折叠?



