Kernel module

From ArchWiki
Revision as of 16:54, 9 June 2011 by Thestinger (talk | contribs) ({{Codeline|/sbin/modprobe}}: fix typo)
Jump to navigation Jump to search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.

Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어

External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:Kernel module#)

This article will cover the methods for managing kernel modules.


The Template:Codeline command handles the addition and removal of modules from the Linux kernel.

To manually load (or add) a module, run:

# modprobe module_name

Occasionally you could need to remove (or unload) a module; in this case use the following command:

# modprobe -r module_name

Or, alternatively:

# rmmod module_name


The Template:Filename directory can be used to pass module settings to udev. You can use configuration files with any name in the directory, but Template:Filename is the defacto standard for general settings.



Blacklisting modules

Blacklisting when referring to Kernel modules is a mechanism to stop the kernel module loading. This is either when the associated hardware is not required to be used, or loading that module causes problems.

For example there may be a two kernel modules, that if they get loaded together try to control the same piece of hardware resulting in a conflict.

Note: Blacklisting modules in rc.conf has been obsoleted and no longer works in initscripts 2011.06.1-1, so you'll have to use one of these methods.

You can blacklist modules using the Template:Codeline keyword:


You can also blacklist modules on the kernel command line using the following syntax:




The "blacklist" option blacklists modules loaded by that name only. But if some other module depends on that module, that module will get loaded because blacklisting does not match dependent modules.

Alternatively, one can force nothing to be installed to "blacklist" that module and any that depend on it:


Some modules are loaded as part of the initramfs. Template:Codeline will print out all autodetected modules. To avoid initramfs from loading those modules you wish to blacklist, then blacklist them in Template:Filename. Running Template:Codeline will list all modules pulled in by the various hooks (i.e. filesystem hook, SCSI hook, etc). Remember to rebuild initramfs once you've blacklisted the modules.


The following commands can help determine the dependencies of a module from the module itself.

  • Format the contents of Template:Filename and show what kernel modules are currently loaded:
$ lsmod
$ modinfo MODULE_1
$ modprobe --show-depends MODULE_2

See also