CentOS 中内核模块的加载和卸载
Linux操作系统的核心具有模块化的特性,在编译核心时,我们可以将系统功能编译成一个个单独的模块,待需要时再分别载入。
lsmod
lsmod命令用于显示已经加载到内核中的模块的状态信息。执行lsmod命令后会列出所有已载入系统的模块。
insmod
insmod命令用于将给定的模块加载到内核中。
语法:insmod <参数> <模块名>
可选参数:
-f:不检查目前kernel版本与模块编译时的kernel版本是否一致,强制将模块载入; -k:将模块设置为自动卸除; -m:输出模块的载入信息; -o<模块名称>:指定模块的名称,可使用模块文件的文件名; -p:测试模块是否能正确地载入kernel; -s:将所有信息记录在系统记录文件中; -v:执行时显示详细的信息; -x:不要汇出模块的外部符号; -X:汇出模块所有的外部符号,此为预设置。
rmmod
rmmod命令用于从当前运行的内核中移除指定的内核模块。执行rmmod指令,可删除不需要的模块。
语法:rmmod <参数> <模块名>
可选参数:
-v:显示指令执行的详细信息; -f:强制移除模块,使用此选项比较危险; -w:等待着,直到模块能够被除时在移除模块; -s:向系统日志(syslog)发送错误信息。
modprobe
modprobe命令用于智能地向内核中加载模块或者从内核中移除模块。
modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。
语法:modprobe <参数>
可选参数:
-a或--all:载入全部的模块; -c或--show-conf:显示所有模块的设置信息; -d或--debug:使用排错模式; -l或--list:显示可用的模块; -r或--remove:模块闲置不用时,即自动卸载模块; -t或--type:指定模块类型; -v或--verbose:执行时显示详细的信息; -V或--version:显示版本信息; -help:显示帮助。
模块黑名单
有些模块会随系统启动自动加载,这个时候我们需要将模块加入黑名单中,禁止模块自启动。
通过语法 blacklist <模块名> 加入到 /etc/modprobe.d/blacklist.conf 文件中即可。
echo 'blacklist <模块名>' >> /etc/modprobe.d/blacklist.conf
原文链接地址:https://blog.exsvc.cn/article/centos-module-install-remove.html
转载请注明:转载自 易科博客 ,谢谢!