kmod/man/depmod.d.xml
Michal Suchanek 9d1fb317c8 libkmod, depmod, modprobe: Make directory for kernel modules configurable
Now that modprobe.d is searched under ${prefix}/lib, allow a complete
transition to files only under ${prefix} by adding a ${module_directory}
configuration. This specifies the directory where to search for kernel
modules and should match the location where the kernel/distro installs
them.

With this distributions that do not want to ship files in /lib can also
move kernel modules to /usr while others can keep them in /lib.

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
Link: https://lore.kernel.org/r/a3765f4e8ae3ce29c0847a0132d4a8d51ad040a9.1699618135.git.msuchanek@suse.de
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
2023-12-06 09:53:05 -06:00

165 lines
6.3 KiB
XML

<?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="depmod.d">
<refentryinfo>
<title>depmod.d</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>depmod.d</refentrytitle>
<manvolnum>5</manvolnum>
</refmeta>
<refnamediv>
<refname>depmod.d</refname>
<refpurpose>Configuration directory for depmod</refpurpose>
</refnamediv>
<refsynopsisdiv>
<para><filename>/lib/depmod.d/*.conf</filename></para>
<para><filename>@DISTCONFDIR@/depmod.d/*.conf</filename></para>
<para><filename>/usr/local/lib/depmod.d/*.conf</filename></para>
<para><filename>/run/depmod.d/*.conf</filename></para>
<para><filename>/etc/depmod.d/*.conf</filename></para>
</refsynopsisdiv>
<refsect1><title>DESCRIPTION</title>
<para>The order in which modules are processed by the
<command>depmod</command> command can be altered on a global or
per-module basis. This is typically useful in cases where built-in
kernel modules are complemented by custom built versions of the
same and the user wishes to affect the priority of processing in
order to override the module version supplied by the kernel.
</para>
<para>
The format of files under <filename>depmod.d</filename> is simple: one
command per line, with blank lines and lines starting with '#'
ignored (useful for adding comments). A '\' at the end of a line
causes it to continue on the next line, which makes the files a
bit neater.
</para>
</refsect1>
<refsect1>
<title>COMMANDS</title>
<variablelist>
<varlistentry>
<term>search <replaceable>subdirectory...</replaceable>
</term>
<listitem>
<para>
This allows you to specify the order in which @MODULE_DIRECTORY@
(or other configured module location) subdirectories will
be processed by <command>depmod</command>. Directories are
listed in order, with the highest priority given to the
first listed directory and the lowest priority given to the last
directory listed. The special keyword <command>built-in</command>
refers to the standard module directories installed by the kernel.
Another special keyword <command>external</command> refers to the
list of external directories, defined by the
<command>external</command> command.
</para>
<para>
By default, depmod will give a higher priority to
a directory with the name <command>updates</command>
using this built-in search string: "updates built-in"
but more complex arrangements are possible and are
used in several popular distributions.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>override <replaceable>modulename</replaceable> <replaceable>kernelversion</replaceable> <replaceable>modulesubdirectory</replaceable>
</term>
<listitem>
<para>
This command allows you to override which version of a
specific module will be used when more than one module
sharing the same name is processed by the
<command>depmod</command> command. It is possible to
specify one kernel or all kernels using the * wildcard.
<replaceable>modulesubdirectory</replaceable> is the
name of the subdirectory under @MODULE_DIRECTORY@ (or other
module location) where the target module is installed.
</para>
<para>
For example, it is possible to override the priority of
an updated test module called <command>kmod</command> by
specifying the following command: "override kmod * extra".
This will ensure that any matching module name installed
under the <command>extra</command> subdirectory within
@MODULE_DIRECTORY@ (or other module location) will take priority
over any likenamed module already provided by the kernel.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>external <replaceable>kernelversion</replaceable>
<replaceable>absolutemodulesdirectory...</replaceable>
</term>
<listitem>
<para>
This specifies a list of directories, which will be checked
according to the priorities in the <command>search</command>
command. The order matters also, the first directory has the higher
priority.
</para>
<para>
The <replaceable>kernelversion</replaceable> is a POSIX regular
expression or * wildcard, like in the <command>override</command>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>exclude <replaceable>excludedir</replaceable>
</term>
<listitem>
<para>
This specifies the trailing directories that will be excluded
during the search for kernel modules.
</para>
<para>
The <replaceable>excludedir</replaceable> is the trailing directory
to exclude
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1><title>COPYRIGHT</title>
<para>
This manual page Copyright 2006-2010, Jon Masters, Red Hat, Inc.
</para>
</refsect1>
<refsect1><title>SEE ALSO</title>
<para>
<citerefentry>
<refentrytitle>depmod</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>
</para>
</refsect1>
</refentry>