Insmod
installs a loadable module in the running kernel.
Insmod
tries to link a module into the running kernel by resolving all symbols
from the kernel's exported symbol table.
If the object file name is given without extension,
insmod
will search for the module in some common default directories. The
environment variable MODPATH can be used to override this default.
-f
Attempt load the module even if the version of the running kernel and
the version of the kernel for which the module was compiled do not match.
-k
Set the auto-clean flag on the module. This flag will be used by
kerneld(8) to remove modules that have not been used in some
period of time usually one minute.
-m
Output a load map, making it easier to debug the module in the event
of a kernel panic.
-o
Explicitly name the module, rather than deriving the name from the
base name of the source object file.
-p
Probe the module to see if it could be successfully loaded. This
includes locating the object file in the module path, checking
version numbers, and resolving symbols.
-s
Output everything to syslog(3) instead of the terminal.
-v
-X, -x
Do and do not export all of the module's external symbols, respectively.
The default is for the symbols to be exported. This option is only
effective if the module does not explicitly export its own controled
symbol table, and thus is depreciated.
Some modules accept load-time parameters to customize their operation.
These parameters are often I/O port and IRQ numbers that vary from
machine to machine and cannot be determined from the hardware.
In modules built for 2.0 series kernels, any integer or character pointer
symbol may be treated as a parameter and modified. Beginning in the
2.1 series kernels, symbols are explicitly marked as parameters so that
only specific values may be chagned. Furthermore type information is
provied for checking the values provided at load time.
In the case of integers, all values may be in decimal, octal or
hexadecimal a la C: 17, 021 or 0x11. Array elements are specified
sequence separrated by commas; elements can be skipped by omitting
the value.
In 2.0 series modules, values that do not begin with a number are
considered strings. Beginning in 2.1, the parameter's type information
indicates whether to interpret the value as a string. If the value
begins with double-quotes ("), the string is interpreted as
in C, escape sequences and all. Do note that from the shell prompt,
the quotes themselves may need to be protected from shell interpretation.