| <?xml version='1.0'?> |
| <!--*-nxml-*--> |
| <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" |
| "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
| <refentry id="modprobe"> |
| <refentryinfo> |
| <title>modprobe</title> |
| <productname>kmod</productname> |
| |
| <authorgroup> |
| <author> |
| <contrib>Developer</contrib> |
| <firstname>Jon</firstname> |
| <surname>Masters</surname> |
| <email>jcm@jonmasters.org</email> |
| </author> |
| <author> |
| <contrib>Developer</contrib> |
| <firstname>Robby</firstname> |
| <surname>Workman</surname> |
| <email>rworkman@slackware.com</email> |
| </author> |
| <author> |
| <contrib>Developer</contrib> |
| <firstname>Lucas</firstname> |
| <surname>De Marchi</surname> |
| <email>lucas.de.marchi@gmail.com</email> |
| </author> |
| </authorgroup> |
| </refentryinfo> |
| |
| <refmeta> |
| <refentrytitle>modprobe</refentrytitle> |
| <manvolnum>8</manvolnum> |
| </refmeta> |
| |
| <refnamediv> |
| <refname>modprobe</refname> |
| <refpurpose>Add and remove modules from the Linux Kernel</refpurpose> |
| </refnamediv> |
| |
| <refsynopsisdiv> |
| <cmdsynopsis> |
| <command>modprobe</command> |
| <arg><option>-v</option></arg> |
| <arg><option>-V</option></arg> |
| <arg><option>-C <replaceable>config-file</replaceable></option></arg> |
| <arg><option>-n</option></arg> |
| <arg><option>-i</option></arg> |
| <arg><option>-q</option></arg> |
| <arg><option>-b</option></arg> |
| <arg><replaceable>modulename</replaceable></arg> |
| <arg rep='repeat'><option><replaceable>module parameters</replaceable></option></arg> |
| </cmdsynopsis> |
| <cmdsynopsis> |
| <command>modprobe</command> |
| <arg>-r</arg> |
| <arg><option>-v</option></arg> |
| <arg><option>-n</option></arg> |
| <arg><option>-i</option></arg> |
| <arg rep='repeat'><option><replaceable>modulename</replaceable></option></arg> |
| </cmdsynopsis> |
| <cmdsynopsis> |
| <command>modprobe</command> |
| <arg>-c</arg> |
| </cmdsynopsis> |
| <cmdsynopsis> |
| <command>modprobe</command> |
| <arg>--dump-modversions</arg> <arg><replaceable>filename</replaceable></arg> |
| </cmdsynopsis> |
| </refsynopsisdiv> |
| <refsect1> |
| <title>Description</title> |
| |
| <para> |
| <command>modprobe</command> intelligently adds or removes a |
| module from the Linux kernel: note that for convenience, there |
| is no difference between _ and - in module names (automatic |
| underscore conversion is performed). |
| <command>modprobe</command> looks in the module directory |
| <filename>/lib/modules/`uname -r`</filename> for all |
| the modules and other files, except for the optional |
| configuration files in the |
| <filename>/etc/modprobe.d</filename> directory |
| (see <citerefentry> |
| <refentrytitle>modprobe.d</refentrytitle><manvolnum>5</manvolnum> |
| </citerefentry>). <command>modprobe</command> will also use module |
| options specified on the kernel command line in the form of |
| <module>.<option> and blacklists in the form of |
| modprobe.blacklist=<module>. |
| </para> |
| <para> |
| Note that unlike in 2.4 series Linux kernels (which are not supported |
| by this tool) this version of <command>modprobe</command> does not |
| do anything to the module itself: the work of resolving symbols |
| and understanding parameters is done inside the kernel. So |
| module failure is sometimes accompanied by a kernel message: see |
| <citerefentry> |
| <refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry>. |
| </para> |
| <para> |
| <command>modprobe</command> expects an up-to-date |
| <filename>modules.dep.bin</filename> file as generated |
| by the corresponding <command>depmod</command> utility shipped |
| along with <command>modprobe</command> (see |
| <citerefentry><refentrytitle>depmod</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry>). This file lists what other modules each |
| module needs (if any), and <command>modprobe</command> uses this |
| to add or remove these dependencies automatically. |
| </para> |
| <para> |
| If any arguments are given after the |
| <replaceable>modulename</replaceable>, they are passed to the |
| kernel (in addition to any options listed in the configuration |
| file). |
| </para> |
| </refsect1> |
| |
| <refsect1><title>OPTIONS</title> |
| <variablelist> |
| <varlistentry> |
| <term> |
| <option>-a</option> |
| </term> |
| <term> |
| <option>--all</option> |
| </term> |
| <listitem> |
| <para>Insert all module names on the command line.</para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-b</option> |
| </term> |
| <term> |
| <option>--use-blacklist</option> |
| </term> |
| <listitem> |
| <para> |
| This option causes <command>modprobe</command> to apply the |
| <command>blacklist</command> commands in the configuration files |
| (if any) to module names as well. It is usually used by |
| <citerefentry> |
| <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum> |
| </citerefentry>. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-C</option> |
| </term> |
| <term> |
| <option>--config</option> |
| </term> |
| <listitem> |
| <para>This option overrides the default configuration directory |
| (<filename>/etc/modprobe.d</filename>). |
| </para> |
| <para> |
| This option is passed through <command>install</command> |
| or <command>remove</command> commands to other |
| <command>modprobe</command> commands in the |
| MODPROBE_OPTIONS environment variable. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-c</option> |
| </term> |
| <term> |
| <option>--showconfig</option> |
| </term> |
| <listitem> |
| <para> |
| Dump out the effective configuration from the config directory and |
| exit. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>--dump-modversions</option> |
| </term> |
| <listitem> |
| <para> |
| Print out a list of module versioning information required by a |
| module. This option is commonly used by distributions in order to |
| package up a Linux kernel module using module versioning deps. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-d</option> |
| </term> |
| <term> |
| <option>--dirname</option> |
| </term> |
| <listitem> |
| <para> |
| Root directory for modules, <filename>/</filename> by default. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>--first-time</option> |
| </term> |
| <listitem> |
| <para> |
| Normally, <command>modprobe</command> will succeed (and do |
| nothing) if told to insert a module which is already |
| present or to remove a module which isn't present. This is |
| ideal for simple scripts; however, more complicated scripts often |
| want to know whether <command>modprobe</command> really |
| did something: this option makes modprobe fail in the |
| case that it actually didn't do anything. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>--force-vermagic</option> |
| </term> |
| <listitem> |
| <para> |
| Every module contains a small string containing important |
| information, such as the kernel and compiler versions. If a module |
| fails to load and the kernel complains that the "version magic" |
| doesn't match, you can use this option to remove it. Naturally, |
| this check is there for your protection, so this using option is |
| dangerous unless you know what you're doing. |
| </para> |
| <para> |
| This applies to any modules inserted: both the module (or alias) on |
| the command line and any modules on which it depends. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>--force-modversion</option> |
| </term> |
| <listitem> |
| <para> |
| When modules are compiled with CONFIG_MODVERSIONS set, a section |
| detailing the versions of every interfaced used by (or supplied by) |
| the module is created. If a module fails to load and the kernel |
| complains that the module disagrees about a version of some |
| interface, you can use "--force-modversion" to remove the version |
| information altogether. Naturally, this check is there for your |
| protection, so using this option is dangerous unless you know what |
| you're doing. |
| </para> |
| <para> |
| This applies any modules inserted: both the module (or alias) on |
| the command line and any modules on which it depends. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-f</option> |
| </term> |
| <term> |
| <option>--force</option> |
| </term> |
| <listitem> |
| <para> |
| Try to strip any versioning information from the module which might |
| otherwise stop it from loading: this is the same as using both |
| <option>--force-vermagic</option> and |
| <option>--force-modversion</option>. Naturally, these checks are |
| there for your protection, so using this option is dangerous unless |
| you know what you are doing. |
| </para> |
| <para> |
| This applies to any modules inserted: both the module (or alias) on |
| the command line and any modules it on which it depends. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-i</option> |
| </term> |
| <term> |
| <option>--ignore-install</option> |
| </term> |
| <term> |
| <option>--ignore-remove</option> |
| </term> |
| <listitem> |
| <para> |
| This option causes <command>modprobe</command> to ignore |
| <command>install</command> and <command>remove</command> commands |
| in the configuration file (if any) for the module specified on the |
| command line (any dependent modules are still subject to commands |
| set for them in the configuration file). Both |
| <command>install</command> and <command>remove</command> commands |
| will currently be ignored when this option is used regardless of |
| whether the request was more specifically made with only one or |
| other (and not both) of <option>--ignore-install</option> or |
| <option>--ignore-remove</option>. See <citerefentry> |
| <refentrytitle>modprobe.d</refentrytitle><manvolnum>5</manvolnum> |
| </citerefentry>. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-n</option> |
| </term> |
| <term> |
| <option>--dry-run</option> |
| </term> |
| <term> |
| <option>--show</option> |
| </term> |
| <listitem> |
| <para> |
| This option does everything but actually insert or delete the |
| modules (or run the install or remove commands). Combined with |
| <option>-v</option>, it is useful for debugging problems. For |
| historical reasons both <option>--dry-run</option> and |
| <option>--show</option> actually mean the same thing and are |
| interchangeable. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-q</option> |
| </term> |
| <term> |
| <option>--quiet</option> |
| </term> |
| <listitem> |
| <para> |
| With this flag, <command>modprobe</command> won't print an error |
| message if you try to remove or insert a module it can't find (and |
| isn't an alias or |
| <command>install</command>/<command>remove</command> command). |
| However, it will still return with a non-zero exit status. The |
| kernel uses this to opportunistically probe for modules which might |
| exist using request_module. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-R</option> |
| </term> |
| <term> |
| <option>--resolve-alias</option> |
| </term> |
| <listitem> |
| <para> |
| Print all module names matching an alias. This can be useful for |
| debugging module alias problems. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-r</option> |
| </term> |
| <term> |
| <option>--remove</option> |
| </term> |
| <listitem> |
| <para> |
| This option causes <command>modprobe</command> to remove rather |
| than insert a module. If the modules it depends on are also |
| unused, <command>modprobe</command> will try to remove them too. |
| Unlike insertion, more than one module can be specified on the |
| command line (it does not make sense to specify module parameters |
| when removing modules). |
| </para> |
| <para> |
| There is usually no reason to remove modules, but some buggy |
| modules require it. Your distribution kernel may not have been |
| built to support removal of modules at all. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-S</option> |
| </term> |
| <term> |
| <option>--set-version</option> |
| </term> |
| <listitem> |
| <para> |
| Set the kernel version, rather than using |
| <citerefentry><refentrytitle>uname</refentrytitle><manvolnum>2</manvolnum></citerefentry> |
| to decide on the kernel version (which dictates where to find the |
| modules). |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>--show-depends</option> |
| </term> |
| <listitem> |
| <para> |
| List the dependencies of a module (or alias), including the module |
| itself. This produces a (possibly empty) set of module filenames, |
| one per line, each starting with "insmod" and is typically used by |
| distributions to determine which modules to include when generating |
| initrd/initramfs images. <command>Install</command> commands which |
| apply are shown prefixed by "install". It does not run any of the |
| install commands. Note that |
| <citerefentry><refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum></citerefentry> |
| can be used to extract dependencies of a module from the module |
| itself, but knows nothing of aliases or install commands. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-s</option> |
| </term> |
| <term> |
| <option>--syslog</option> |
| </term> |
| <listitem> |
| <para> |
| This option causes any error messages to go through the syslog |
| mechanism (as LOG_DAEMON with level LOG_NOTICE) rather than to |
| standard error. This is also automatically enabled when stderr is |
| unavailable. |
| </para> |
| <para> |
| This option is passed through <command>install</command> or |
| <command>remove</command> commands to other |
| <command>modprobe</command> commands in the MODPROBE_OPTIONS |
| environment variable. |
| </para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-V</option> |
| </term> |
| <term> |
| <option>--version</option> |
| </term> |
| <listitem> |
| <para>Show version of program and exit.</para> |
| </listitem> |
| </varlistentry> |
| <varlistentry> |
| <term> |
| <option>-v</option> |
| </term> |
| <term> |
| <option>--verbose</option> |
| </term> |
| <listitem> |
| <para> |
| Print messages about what the program is doing. Usually |
| <command>modprobe</command> only prints messages if something goes |
| wrong. |
| </para> |
| <para> |
| This option is passed through <command>install</command> or |
| <command>remove</command> commands to other |
| <command>modprobe</command> commands in the MODPROBE_OPTIONS |
| environment variable. |
| </para> |
| </listitem> |
| </varlistentry> |
| </variablelist> |
| </refsect1> |
| |
| <refsect1><title>ENVIRONMENT</title> |
| <para> |
| The MODPROBE_OPTIONS environment variable can also be used to pass |
| arguments to <command>modprobe</command>. |
| </para> |
| </refsect1> |
| |
| <refsect1><title>COPYRIGHT</title> |
| <para> |
| This manual page originally Copyright 2002, Rusty Russell, IBM |
| Corporation. Maintained by Jon Masters and others. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>SEE ALSO</title> |
| <para> |
| <citerefentry> |
| <refentrytitle>modprobe.d</refentrytitle><manvolnum>5</manvolnum> |
| </citerefentry>, |
| <citerefentry> |
| <refentrytitle>insmod</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry>, |
| <citerefentry> |
| <refentrytitle>rmmod</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry>, |
| <citerefentry> |
| <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry>, |
| <citerefentry> |
| <refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum> |
| </citerefentry> |
| </para> |
| </refsect1> |
| </refentry> |