diff options
Diffstat (limited to 'man/systemd-udevd.service.xml')
-rw-r--r-- | man/systemd-udevd.service.xml | 311 |
1 files changed, 311 insertions, 0 deletions
diff --git a/man/systemd-udevd.service.xml b/man/systemd-udevd.service.xml new file mode 100644 index 0000000..27d0e02 --- /dev/null +++ b/man/systemd-udevd.service.xml @@ -0,0 +1,311 @@ +<?xml version='1.0'?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> +<!-- SPDX-License-Identifier: LGPL-2.1-or-later --> + +<refentry id="systemd-udevd.service" + xmlns:xi="http://www.w3.org/2001/XInclude"> + + <refentryinfo> + <title>systemd-udevd.service</title> + <productname>systemd</productname> + </refentryinfo> + + <refmeta> + <refentrytitle>systemd-udevd.service</refentrytitle> + <manvolnum>8</manvolnum> + </refmeta> + + <refnamediv> + <refname>systemd-udevd.service</refname> + <refname>systemd-udevd-control.socket</refname> + <refname>systemd-udevd-kernel.socket</refname> + <refname>systemd-udevd</refname> + <refpurpose>Device event managing daemon</refpurpose> + </refnamediv> + + <refsynopsisdiv> + <para><filename>systemd-udevd.service</filename></para> + <para><filename>systemd-udevd-control.socket</filename></para> + <para><filename>systemd-udevd-kernel.socket</filename></para> + + <cmdsynopsis> + <command>/usr/lib/systemd/systemd-udevd</command> + <arg><option>--daemon</option></arg> + <arg><option>--debug</option></arg> + <arg><option>--children-max=</option></arg> + <arg><option>--exec-delay=</option></arg> + <arg><option>--event-timeout=</option></arg> + <arg><option>--resolve-names=early|late|never</option></arg> + <arg><option>--version</option></arg> + <arg><option>--help</option></arg> + </cmdsynopsis> + + </refsynopsisdiv> + + <refsect1><title>Description</title> + <para><command>systemd-udevd</command> listens to kernel uevents. + For every event, systemd-udevd executes matching instructions + specified in udev rules. See <citerefentry> + <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum> + </citerefentry>.</para> + + <para>The behavior of the daemon can be configured using + <citerefentry><refentrytitle>udev.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, + its command line options, environment variables, and on the kernel + command line, or changed dynamically with <command>udevadm + control</command>. + </para> + </refsect1> + + <refsect1><title>Options</title> + <variablelist> + <varlistentry> + <term><option>-d</option></term> + <term><option>--daemon</option></term> + <listitem> + <para>Detach and run in the background.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-D</option></term> + <term><option>--debug</option></term> + <listitem> + <para>Print debug messages to standard error.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-c</option></term> + <term><option>--children-max=</option></term> + <listitem> + <para>Limit the number of events executed in parallel.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-e</option></term> + <term><option>--exec-delay=</option></term> + <listitem> + <para>Delay the execution of each <varname>RUN{<replaceable>program</replaceable>}</varname> + parameter by the given number of seconds. This option + might be useful when debugging system crashes during + coldplug caused by loading non-working kernel + modules.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-t</option></term> + <term><option>--event-timeout=</option></term> + <listitem> + <para>Set the number of seconds to wait for events to finish. After + this time, the event will be terminated. The default is 180 seconds.</para> + + <xi:include href="version-info.xml" xpointer="v216"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-s</option></term> + <term><option>--timeout-signal=</option></term> + <listitem> + <para>Set the signal which <filename>systemd-udevd</filename> will send to + forked off processes after reaching event timeout. The setting can be overridden + at boot time with the kernel command line option + <varname>udev.timeout_signal=</varname>. Setting to <constant>SIGABRT</constant> + may be helpful in order to debug worker timeouts. Defaults to + <constant>SIGKILL</constant>. Note that setting the option on the command line + overrides the setting from the configuration file. + </para> + + <xi:include href="version-info.xml" xpointer="v246"/> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>-N</option></term> + <term><option>--resolve-names=</option></term> + <listitem> + <para>Specify when systemd-udevd should resolve names of users and groups. + When set to <option>early</option> (the default), names will be + resolved when the rules are parsed. When set to + <option>late</option>, names will be resolved for every event. + When set to <option>never</option>, names will never be resolved + and all devices will be owned by root.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + + <xi:include href="standard-options.xml" xpointer="help" /> + <xi:include href="standard-options.xml" xpointer="version" /> + </variablelist> + </refsect1> + + <refsect1><title>Kernel command line</title> + <variablelist class='kernel-commandline-options'> + <para>Parameters prefixed with "rd." will be read when <command>systemd-udevd</command> is used in an + initrd, those without will be processed both in the initrd and on the host.</para> + <varlistentry> + <term><varname>udev.log_level=</varname></term> + <term><varname>rd.udev.log_level=</varname></term> + <listitem> + <para>Set the log level.</para> + + <xi:include href="version-info.xml" xpointer="v247"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.children_max=</varname></term> + <term><varname>rd.udev.children_max=</varname></term> + <listitem> + <para>Limit the number of events executed in parallel.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.exec_delay=</varname></term> + <term><varname>rd.udev.exec_delay=</varname></term> + <listitem> + <para>Delay the execution of each <varname>RUN{<replaceable>program</replaceable>}</varname> parameter by the given + number of seconds. This option might be useful when + debugging system crashes during coldplug caused by loading + non-working kernel modules.</para> + + <xi:include href="version-info.xml" xpointer="v186"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.event_timeout=</varname></term> + <term><varname>rd.udev.event_timeout=</varname></term> + <listitem> + <para>Wait for events to finish up to the given number + of seconds. This option might be useful if events are + terminated due to kernel drivers taking too long to initialize.</para> + + <xi:include href="version-info.xml" xpointer="v216"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.timeout_signal=</varname></term> + <term><varname>rd.udev.timeout_signal=</varname></term> + <listitem> + <para>Specifies a signal that <filename>systemd-udevd</filename> will send to + workers on timeout. Note that kernel command line option overrides both the + setting in the configuration file and the one on the program command line.</para> + + <xi:include href="version-info.xml" xpointer="v246"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.blockdev_read_only</varname></term> + <term><varname>rd.udev.blockdev_read_only</varname></term> + <listitem> + <para>If specified, mark all physical block devices read-only as they appear. Synthetic block + devices (such as loopback block devices or device mapper devices) are left as they are. This is + useful to guarantee that the contents of physical block devices remains unmodified during runtime, + for example to implement fully stateless systems, for testing or for recovery situations where + corrupted file systems shall not be corrupted further through accidental modification.</para> + + <para>A block device may be marked writable again by issuing the <command>blockdev + --setrw</command> command, see <citerefentry + project='man-pages'><refentrytitle>blockdev</refentrytitle><manvolnum>8</manvolnum></citerefentry> + for details.</para> + + <xi:include href="version-info.xml" xpointer="v246"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>net.ifnames=</varname></term> + <listitem> + <para>Network interfaces are renamed to give them predictable names + when possible. It is enabled by default; specifying 0 disables it.</para> + + <xi:include href="version-info.xml" xpointer="v199"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>net.naming-scheme=</varname></term> + <listitem> + <para>Network interfaces are renamed to give them predictable names when possible (unless + <varname>net.ifnames=0</varname> is specified, see above). With this kernel command line option it + is possible to pick a specific version of this algorithm and override the default chosen at + compilation time. Expects one of the naming scheme identifiers listed in + <citerefentry><refentrytitle>systemd.net-naming-scheme</refentrytitle><manvolnum>7</manvolnum></citerefentry>, + or <literal>latest</literal> to select the latest scheme known (to this particular version of + <filename>systemd-udevd.service</filename>).</para> + + <para>Note that selecting a specific scheme is not sufficient to fully stabilize interface naming: + the naming is generally derived from driver attributes exposed by the kernel. As the kernel is + updated, previously missing attributes <filename>systemd-udevd.service</filename> is checking might + appear, which affects older name derivation algorithms, too.</para> + + <xi:include href="version-info.xml" xpointer="v240"/> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>net.ifname-policy=<replaceable>policy1</replaceable>[,<replaceable>policy2</replaceable>,…][,<replaceable>MAC</replaceable>]</varname></term> + <listitem> + <para>Specifies naming policies applied when renaming network interfaces. Takes a list of + policies and an optional MAC address separated with comma. Each policy value must be one of + the policies understood by the <varname>NamePolicy=</varname> setting in .link files, e.g. + <literal>onboard</literal> or <literal>path</literal>. See + <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry> + for more details. When the MAC address is specified, the policies are applied to the + interface which has the address. When no MAC address is specified, the policies are applied + to all interfaces. This kernel command line argument can be specified multiple times.</para> + + <para>This argument is not directly read by <command>systemd-udevd</command>, but is instead + converted to a .link file by + <citerefentry><refentrytitle>systemd-network-generator.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>. + For this argument to take effect, <filename>systemd-network-generator.service</filename> must be + enabled.</para> + + <para>Example: + <programlisting>net.ifname-policy=keep,kernel,path,slot,onboard,01:23:45:67:89:ab +net.ifname-policy=keep,kernel,path,slot,onboard,mac</programlisting> + This is mostly equivalent to creating the following .link files: + <programlisting># 91-name-policy-with-mac.link +[Match] +MACAddress=01:23:45:67:89:ab + +[Link] +NamePolicy=keep kernel path slot onboard +AlternativeNamePolicy=path slot onboard</programlisting> + and + <programlisting># 92-name-policy-for-all.link +[Match] +OriginalName=* + +[Link] +NamePolicy=keep kernel path slot onboard mac +AlternativeNamePolicy=path slot onboard mac</programlisting> + </para> + + <xi:include href="version-info.xml" xpointer="v250"/> + </listitem> + </varlistentry> + </variablelist> + <!-- when adding entries here, consider also adding them in kernel-command-line.xml --> + </refsect1> + + <refsect1> + <title>See Also</title> + <para> + <citerefentry><refentrytitle>udev.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, + <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry>, + <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry> + </para> + </refsect1> +</refentry> |