How can I temporarily disable a kernel module?
I would like to temporarily (until next boot) disable a kernel module.
How can I do this?
Solution 1:
Use lsmod
to find the name of a kernel module about that you are interested in temporarily disabling. After you've found the name, use this command to disable the module:
sudo modprobe -r <module_name>
However, this command will fail with an error message something like FATAL: Module <module_name> is in use
if a process is using:
- the
<module_name>
- a module about that
<module_name>
directly depends on - any module about that
<module_name>
- through the dependency tree - depends on indirectly.
You can use lsmod | grep <module_name>
to obtain the names of the modules which are preventing you from temporarily disabling a certain module (these module names are listed in the last column).
More about:
http://docs.fedoraproject.org/en-US/Fedora/14/html/Deployment_Guide/ch-Working_with_Kernel_Modules.html#sec-Listing_Currently-Loaded_Modules
http://docs.fedoraproject.org/en-US/Fedora/14/html/Deployment_Guide/sec-Unloading_a_Module.html
Solution 2:
It appears:
sudo modprobe -r moduleName
Achieves what I want. The module is removed and reloaded upon reboot.