diff options
-rw-r--r-- | man/Makefile.am | 5 | ||||
-rw-r--r-- | man/udev.xml | 115 | ||||
-rw-r--r-- | man/udevadm.xml | 14 | ||||
-rw-r--r-- | man/udevd.xml | 187 |
4 files changed, 261 insertions, 60 deletions
diff --git a/man/Makefile.am b/man/Makefile.am index 0ecf97d35a..a82d537dbf 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -2,6 +2,7 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} XMLPAGES = \ udev.xml \ + udevd.xml \ udevadm.xml noinst_DATA = \ @@ -12,6 +13,7 @@ EXTRA_DIST = \ MANPAGES = \ udev.7 \ + udevd.8 \ udevadm.8 man_MANS = \ @@ -34,5 +36,8 @@ XSLTPROC_PROCESS_MAN = \ udev.7: udev.xml $(XSLTPROC_PROCESS_MAN) +udevd.8: udevd.xml + $(XSLTPROC_PROCESS_MAN) + udevadm.8: udevadm.xml $(XSLTPROC_PROCESS_MAN) diff --git a/man/udev.xml b/man/udev.xml index 3d2d416ead..0633227dea 100644 --- a/man/udev.xml +++ b/man/udev.xml @@ -5,8 +5,8 @@ <refentry id="udev"> <refentryinfo> - <title>systemd</title> - <productname>eudev</productname> + <title>udev</title> + <productname>udev</productname> <authorgroup> <author> <contrib>Developer</contrib> @@ -54,30 +54,9 @@ sources is provided by the library libudev.</para> </refsect1> - <refsect1><title>Configuration</title> - <para>udev configuration files are placed in <filename>/etc/udev</filename> - and <filename>/usr/lib/udev</filename>. All empty lines or lines beginning with - '#' are ignored.</para> - - <refsect2><title>Configuration file</title> - <para>udev expects its main configuration file at <filename>/etc/udev/udev.conf</filename>. - It consists of a set of variables allowing the user to override default udev values. - The following variables can be set:</para> - <variablelist> - <varlistentry> - <term><option>udev_log</option></term> - <listitem> - <para>The logging priority. Valid values are the numerical syslog priorities - or their textual representations: <option>err</option>, <option>info</option> - and <option>debug</option>.</para> - </listitem> - </varlistentry> - </variablelist> - </refsect2> - - <refsect2><title>Rules files</title> + <refsect1><title>Rules files</title> <para>The udev rules are read from the files located in the - system rules directory <filename>/usr/lib/udev/rules.d</filename>, + system rules directory <filename>/lib/udev/rules.d</filename>, the volatile runtime directory <filename>/run/udev/rules.d</filename> and the local administration directory <filename>/etc/udev/rules.d</filename>. All rules files are collectively sorted and processed in lexical order, @@ -94,9 +73,10 @@ extensions are ignored.</para> <para>Every line in the rules file contains at least one key-value pair. + Except for empty lines or lines beginning with '#', which are ignored. There are two kinds of keys: match and assignment. - If all match keys are matching against its value, the rule gets applied and the - assignment keys get the specified value assigned.</para> + If all match keys match against their values, the rule gets applied and the + assignment keys get the specified values assigned.</para> <para>A matching rule may rename a network interface, add symlinks pointing to the device node, or run a specified program as part of @@ -107,21 +87,21 @@ operators are:</para> <variablelist> <varlistentry> - <term><option>==</option></term> + <term><literal>==</literal></term> <listitem> <para>Compare for equality.</para> </listitem> </varlistentry> <varlistentry> - <term><option>!=</option></term> + <term><literal>!=</literal></term> <listitem> <para>Compare for inequality.</para> </listitem> </varlistentry> <varlistentry> - <term><option>=</option></term> + <term><literal>=</literal></term> <listitem> <para>Assign a value to a key. Keys that represent a list are reset and only this single value is assigned.</para> @@ -129,14 +109,14 @@ </varlistentry> <varlistentry> - <term><option>+=</option></term> + <term><literal>+=</literal></term> <listitem> <para>Add the value to a key that holds a list of entries.</para> </listitem> </varlistentry> <varlistentry> - <term><option>:=</option></term> + <term><literal>:=</literal></term> <listitem> <para>Assign a value to a key finally; disallow any later changes.</para> </listitem> @@ -148,7 +128,7 @@ not only the device that has generated the event. If multiple keys that match a parent device are specified in a single rule, all these keys must match at one and the same parent device.</para> - <variablelist> + <variablelist class='udev-directives'> <varlistentry> <term><option>ACTION</option></term> <listitem> @@ -297,19 +277,19 @@ pattern characters are supported:</para> <variablelist> <varlistentry> - <term><option>*</option></term> + <term><literal>*</literal></term> <listitem> <para>Matches zero or more characters.</para> </listitem> </varlistentry> <varlistentry> - <term><option>?</option></term> + <term><literal>?</literal></term> <listitem> <para>Matches any single character.</para> </listitem> </varlistentry> <varlistentry> - <term><option>[]</option></term> + <term><literal>[]</literal></term> <listitem> <para>Matches any single character specified within the brackets. For example, the pattern string 'tty[SR]' would match either 'ttyS' or 'ttyR'. @@ -322,7 +302,7 @@ </variablelist> <para>The following keys can get values assigned:</para> - <variablelist> + <variablelist class='udev-directives'> <varlistentry> <term><option>NAME</option></term> <listitem> @@ -354,7 +334,7 @@ </varlistentry> <varlistentry> - <term><option>OWNER, GROUP, MODE</option></term> + <term><option>OWNER</option>, <option>GROUP</option>, <option>MODE</option></term> <listitem> <para>The permissions for the device node. Every specified value overrides the compiled-in default value.</para> @@ -392,14 +372,31 @@ </varlistentry> <varlistentry> - <term><option>RUN</option></term> + <term><option>RUN{<replaceable>type</replaceable>}</option></term> <listitem> - <para>Add a program to the list of programs to be executed for a specific - device.</para> - <para>If no absolute path is given, the program is expected to live in - /usr/lib/udev, otherwise the absolute path must be specified. The program - name and following arguments are separated by spaces. Single quotes can - be used to specify arguments with spaces.</para> + <para>Add a program to the list of programs to be executed after processing all the + rules for a specific event, depending on <literal>type</literal>:</para> + <variablelist> + <varlistentry> + <term><literal>program</literal></term> + <listitem> + <para>Execute an external program specified as the assigned + value. If no absolute path is given, the program is expected to live in + /lib/udev, otherwise the absolute path must be specified.</para> + <para>This is the default if no <replaceable>type</replaceable> is + specified.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><literal>builtin</literal></term> + <listitem> + <para>As <option>program</option>, but use one of the built-in programs rather + than an external one.</para> + </listitem> + </varlistentry> + </variablelist> + <para>The program name and following arguments are separated by spaces. + Single quotes can be used to specify arguments with spaces.</para> <para>This can only be used for very short-running foreground tasks. Running an event process for a long period of time may block all further events for this or a dependent device.</para> @@ -427,10 +424,10 @@ <term><option>IMPORT{<replaceable>type</replaceable>}</option></term> <listitem> <para>Import a set of variables as device properties, - depending on <replaceable>type</replaceable>:</para> + depending on <literal>type</literal>:</para> <variablelist> <varlistentry> - <term><option>program</option></term> + <term><literal>program</literal></term> <listitem> <para>Execute an external program specified as the assigned value and import its output, which must be in environment key @@ -439,14 +436,21 @@ </listitem> </varlistentry> <varlistentry> - <term><option>file</option></term> + <term><literal>builtin</literal></term> + <listitem> + <para>As <option>program</option>, but use one of the built-in programs rather + than an external one.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><literal>file</literal></term> <listitem> <para>Import a text file specified as the assigned value, the content of which must be in environment key format.</para> </listitem> </varlistentry> <varlistentry> - <term><option>db</option></term> + <term><literal>db</literal></term> <listitem> <para>Import a single property specified as the assigned value from the current device database. This works only if the database is already populated @@ -454,14 +458,14 @@ </listitem> </varlistentry> <varlistentry> - <term><option>cmdline</option></term> + <term><literal>cmdline</literal></term> <listitem> <para>Import a single property from the kernel command line. For simple flags the value of the property is set to '1'.</para> </listitem> </varlistentry> <varlistentry> - <term><option>parent</option></term> + <term><literal>parent</literal></term> <listitem> <para>Import the stored keys from the parent device by reading the database entry of the parent device. The value assigned to @@ -489,7 +493,7 @@ <term><option>OPTIONS</option></term> <listitem> <para>Rule and device options:</para> - <variablelist> + <variablelist class='udev-directives'> <varlistentry> <term><option>link_priority=<replaceable>value</replaceable></option></term> <listitem> @@ -546,7 +550,7 @@ is executed, allowing for the use of device properties set by earlier matching rules. For all other fields, substitutions are performed while the individual rule is being processed. The available substitutions are:</para> - <variablelist> + <variablelist class='udev-directives'> <varlistentry> <term><option>$kernel</option>, <option>%k</option></term> <listitem> @@ -677,20 +681,19 @@ </varlistentry> <varlistentry> - <term><option>%%</option></term> + <term><literal>%%</literal></term> <listitem> <para>The '%' character itself.</para> </listitem> </varlistentry> <varlistentry> - <term><option>$$</option></term> + <term><literal>$$</literal></term> <listitem> <para>The '$' character itself.</para> </listitem> </varlistentry> </variablelist> - </refsect2> </refsect1> <refsect1> diff --git a/man/udevadm.xml b/man/udevadm.xml index 5f0351f0d0..51370cc4e7 100644 --- a/man/udevadm.xml +++ b/man/udevadm.xml @@ -424,14 +424,14 @@ </refsect2> <refsect2><title>udevadm hwdb <optional>options</optional></title> - <para>Maintain the hardware database index in /etc/udev/hwdb.bin.</para> + <para>Maintain the hardware database index in <filename>/etc/udev/hwdb.bin</filename>.</para> <variablelist> <varlistentry> <term><option>--update</option></term> <listitem> - <para>Compile the hardware dabase information located in /usr/lib/udev/hwdb.d/, - /etc/udev/hwdb.d/ and store it in /etc/udev/hwdb.bin. This should be done with - any update to the source files, it will not be called automatically. The running + <para>Compile the hardware database information located in /usr/lib/udev/hwdb.d/, + /etc/udev/hwdb.d/ and store it in <filename>/etc/udev/hwdb.bin</filename>. This should be done after + any update to the source files; it will not be called automatically. The running udev daemon will detect a new database on its own and does not need to be notified about it.</para> </listitem> @@ -443,6 +443,12 @@ retrieved properties.</para> </listitem> </varlistentry> + <varlistentry> + <term><option>--root=<replaceable>string</replaceable></option></term> + <listitem> + <para>Alternative root path in the filesystem for reading and writing files.</para> + </listitem> + </varlistentry> </variablelist> </refsect2> diff --git a/man/udevd.xml b/man/udevd.xml new file mode 100644 index 0000000000..c72484c556 --- /dev/null +++ b/man/udevd.xml @@ -0,0 +1,187 @@ +<?xml version='1.0'?> +<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> + +<refentry id="udevd"> + <refentryinfo> + <title>udevd</title> + <productname>udev</productname> + <authorgroup> + <author> + <contrib>Developer</contrib> + <firstname>Kay</firstname> + <surname>Sievers</surname> + <email>kay@vrfy.org</email> + </author> + </authorgroup> + </refentryinfo> + + <refmeta> + <refentrytitle>udevd</refentrytitle> + <manvolnum>8</manvolnum> + <refmiscinfo class="version"></refmiscinfo> + </refmeta> + + <refnamediv> + <refname>udevd</refname> + <refpurpose>Device event managing daemon</refpurpose> + </refnamediv> + + <refsynopsisdiv> + <para><filename>udevd</filename></para> + + <cmdsynopsis> + <command>/sbin/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>--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>udevd</command> listens to kernel uevents. + For every event, udevd executes matching instructions + specified in udev rules. See <citerefentry> + <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum> + </citerefentry>.</para> + <para>The behavior of the running daemon can be changed with + <command>udevadm control</command>.</para> + </refsect1> + + <refsect1><title>Options</title> + <variablelist> + <varlistentry> + <term><option>--daemon</option></term> + <listitem> + <para>Detach and run in the background.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--debug</option></term> + <listitem> + <para>Print debug messages to stderr.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--children-max=</option></term> + <listitem> + <para>Limit the number of events executed in parallel.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--exec-delay=</option></term> + <listitem> + + <para>Delay the execution of RUN instruction 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> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--resolve-names=</option></term> + <listitem> + <para>Specify when 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> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--version</option></term> + <listitem> + <para>Print version number.</para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>--help</option></term> + <listitem> + <para>Print help text.</para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1><title>Environment</title> + <variablelist class='environment-variables'> + <varlistentry> + <term><varname>$UDEV_LOG=</varname></term> + <listitem> + <para>Set the logging priority.</para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1><title>Kernel command line</title> + <variablelist class='kernel-commandline-options'> + <para>Parameters starting with "rd." will be read when + <command>udevd</command> is used in an initrd.</para> + <varlistentry> + <term><varname>udev.log-priority=</varname></term> + <term><varname>rd.udev.log-priority=</varname></term> + <listitem> + <para>Set the logging priority.</para> + </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> + </listitem> + </varlistentry> + <varlistentry> + <term><varname>udev.exec-delay=</varname></term> + <term><varname>rd.udev.exec-delay=</varname></term> + <listitem> + <para>Delay the execution of RUN instruction 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> + </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> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1><title>Configuration file</title> + <para>udev expects its main configuration file at <filename>/etc/udev/udev.conf</filename>. + It consists of a set of variables allowing the user to override default udev values. All + empty lines or lines beginning with '#' are ignored. The following variables can be + set:</para> + <variablelist> + <varlistentry> + <term><varname>udev_log</varname></term> + <listitem> + <para>The logging priority. Valid values are the numerical syslog priorities + or their textual representations: <option>err</option>, <option>info</option> + and <option>debug</option>.</para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>See Also</title> + <para><citerefentry> + <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum> + </citerefentry>, <citerefentry> + <refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum> + </citerefentry></para> + </refsect1> +</refentry> |