Penguin
 
modprobe(8)
LikePages

MODPROBE

MODPROBE

NAME SYNOPSIS OPTIONS DESCRIPTION CONFIGURATION STRATEGY EXAMPLES FILES SEE ALSO SAFE MODE LOGGING COMMANDS REQUIRED UTILITIES NOTES BUGS AUTHOR


NAME

modprobe - high level handling of loadable modules

SYNOPSIS

modprobe [-adnqv [-C ''config'' module [symbol=value ... modprobe [-adnqv [-C ''config'' [-t ''type'' pattern modprobe -l [-C ''config'' [-t ''type'' pattern modprobe -c [-C ''config'' modprobe -r [-dnv [-C ''config'' [unrenderable node] modprobe -Vh

OPTIONS

-a, --all

Load all matching modules instead of stopping after the first successful loading.

-c, --showconfig

Show the currently used configuration.

-C, --config config

Use the file config instead of (the optional) /etc/modules.conf to specify the configuration. The environment variable MODULECONF can also be used to select (and override) a different configuration file from the default /etc/modules.conf (or /etc/conf.modules (deprecated)).

-d, --debug

Show information about the internal representation of the stack of modules.

-h, --help

Display a summary of options and immediately exit.

-k, --autoclean

Set 'autoclean' on loaded modules. Used by the kernel when it calls on modprobe to satisfy a missing feature (supplied as a module). The -q option is implied by -k. These options will automatically be sent to insmod.

-l, --list

List matching modules.

-n, --show

Don't actually perform the action, just show what would be done.

-q, --quiet

Do not complain about insmod failing to install a module. Continue as normal, but silently, with other possibilities for modprobe to test. This option will automatically be sent to insmod.

-r, --remove

Remove module (stacks) or do autoclean, depending on whether there are any modules mentioned on the command line.

-s, --syslog

Report via syslog instead of stderr. This options will automatically be sent to insmod.

-t moduletype; --type moduletype

Only consider modules of this type. modprobe will only look at modules whose directory path includes exactly /moduletype/moduletype can include more than one directory name, e.g. -t__ drivers/net xxx/drivers/net/ and its subdirectories.

-v, --verbose

Print all commands as they are executed.

-V, --version

Display the version of modprobe.

Note:

Module names must not contain paths (no '/'), nor may they contain the trailing '.o'. For example, slip is a valid module name for modprobe, /lib/modules/2.2.19/net/slip and slip.o are invalid. This applies to the command line and to entries in the config.

DESCRIPTION

The modprobe and depmod utilities are intended to make a Linux modular kernel more manageable for all users, administrators and distribution maintainers.

Modprobe uses a depmod, to automatically load the relevant module(s) from the set of modules available in predefined directory trees.

Modprobe is used to load a single module, a stack of dependent modules, or all modules that are marked with a specified tag.

Modprobe will automatically load all base modules needed in a module stack, as described by the dependency file modules.dep. If the loading of one of these modules fails, the whole current stack of modules loaded in the current session will be unloaded automatically.

Modprobe has two ways of loading modules. One way (the probe mode) will try to load a module out of a list (defined by pattern). Modprobe stops loading as soon as one module loads successfully. This could be used to autoload one Ethernet driver out of a list. The other way modprobe can be used is to load all modules from a list. See EXAMPLES, below.

With the option -r, modprobe will automatically unload a stack of modules, similar to the way __rmmod

  • rmodprobe
  • r__

__/etc/modules.conf''.

The combining the options -l and -t lists all available modules of a certain type.

Option -c will print the currently used configuration (default + configuration file).

CONFIGURATION

The behavior of modprobe (and depmod) can be modified by the (optional) configuration file /etc/modules.conf. For a more detailed description of what this file can contain, as well as the default configuration used by depmod and modprobe, see modules.conf(5).

Note that the pre- and post-remove commands will not be executed if a module is If you want to use the pre- and post-install features, you will have to turn off autoclean for kerneld and instead put something like the following line in your crontab__ (this is used for kmod systems as well) to do autoclean every 2 minutes:

  • /2 * * * * test -f /proc/modules

STRATEGY

The idea is that modprobe will look first in the directory containing modules compiled for the current release of the kernel. If the module is not found there, modprobe will look in the directory common to the kernel version (e.g. 2.0, 2.2). If the module is still found, modprobe will look in the directory containing modules for a default release, and so on.

When you install a new linux, the modules should be moved to a directory related to the release (and version) of the kernel you are installing. Then you should do a symlink from this directory to the

Each time you compile a new kernel, the command make modules_install

When you get a module unrelated to the kernel distribution you should place it in one of the version-independent directories under /lib/modules.

This is the default strategy, which can be overridden in /etc/modules.conf.

EXAMPLES

modprobe -t net

Load one of the modules that are stored in the directory tagged

modprobe -a -t boot

All modules that are stored in directories tagged

modprobe slip

This will attempt to load the module slhc.o if it was not previously loaded, since the slip module needs the functionality in the slhc module. This dependency will be described in the file modules.dep that was created automatically by depmod.

modprobe -r slip

This will unload the slip module. It will also unload the slhc module automatically, unless it is used by some other module as well (e.g. ppp).

FILES

/etc/modules.conf (alternatively but deprecated /etc/conf.modules) /lib/modules//modules.dep, /lib/modules/

SEE ALSO

depmod(8), lsmod(8), kerneld(8), ksyms(8), rmmod(8).

SAFE MODE

If the effective uid is not equal to the real uid then modprobe treats its input with extreme suspicion. The last parameter is always treated as a module name, even if it starts with '-'. There can only be one module name and options of the form __

euid may not be equal to uid when modprobe is invoked from the kernel, this is true for kernels modprobe__ could trust the kernel to only pass valid parameters to modprobe. However at least one local root exploit has occurred because high level kernel code passed unverified parameters direct from the user to modprobe. So modprobe no longer trusts kernel input.

modprobe automatically sets safe mode when the environment consists only of these strings

HOME=/

TERM=linux PATH=/sbin:/usr/sbin:/bin:/usr/bin This detects modprobe execution from the kernel on kernels 2.2 though 2.4.0-test11, even if uid == euid, which it does on the earlier kernels.

LOGGING COMMANDS

If directory /var/log/ksymoops exists and modprobe is run with an option that could load or a delete a module then modprobe will log its command and return status in ''/var/log/ksymoops/`date

  • %Y%m%d.log`''. There is no switch to disable this

automatic logging, if you do not want it to occur, do not create /var/log/ksymoops. If that directory exists, it should be owned by root and be mode 644 or 600 and you should run script insmod_ksymoops_clean every day or so.

REQUIRED UTILITIES

depmod(8), insmod(8).

NOTES

Patterns supplied to modprobe will often need to be escaped to ensure that it is evaluated in the proper context.

BUGS

modprobe [ __-V__ should exit immediately. Instead, it prints the version information and behaves as if no options were given.

AUTHOR

Jacques Gelinas (jack@solucorp.qc.ca) Bjorn Ekwall (bj0rn@blox.se)


This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.