<?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="udevadm">
  <refentryinfo>
    <title>udevadm</title>
    <productname>udev</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>udevadm</refentrytitle>
    <manvolnum>8</manvolnum>
    <refmiscinfo class="version"></refmiscinfo>
  </refmeta>

  <refnamediv>
    <refname>udevadm</refname><refpurpose>udev management tool</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <cmdsynopsis>
      <command>udevadm</command>
        <arg><option>--debug</option></arg>
        <arg><option>--version</option></arg>
        <arg><option>--help</option></arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm info <replaceable>options</replaceable></command>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm trigger <optional>options</optional></command>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm settle <optional>options</optional></command>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm control <replaceable>command</replaceable></command>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm monitor <optional>options</optional></command>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>udevadm test <optional>options</optional> <replaceable>devpath</replaceable></command>
    </cmdsynopsis>
  </refsynopsisdiv>

  <refsect1><title>Description</title>
    <para>udevadm expects a command and command specific options.  It
    controls the runtime behavior of udev, requests kernel events,
    manages the event queue, and provides simple debugging mechanisms.</para>
  </refsect1>

  <refsect1><title>OPTIONS</title>
    <variablelist>
      <varlistentry>
        <term><option>--debug</option></term>
        <listitem>
          <para>Print debug messages to stderr.</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>

    <refsect2><title>udevadm info <replaceable>options</replaceable></title>
      <para>Queries the udev database for device information
      stored in the udev database. It can also query the properties
      of a device from its sysfs representation to help creating udev
      rules that match this device.</para>
      <variablelist>
        <varlistentry>
          <term><option>--query=<replaceable>type</replaceable></option></term>
          <listitem>
            <para>Query the database for specified type of device data. It needs the
            <option>--path</option> or <option>--name</option> to identify the specified
            device. Valid queries are:
            <command>name</command>, <command>symlink</command>, <command>path</command>,
            <command>property</command>, <command>all</command>.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--path=<replaceable>devpath</replaceable></option></term>
          <listitem>
            <para>The devpath of the device to query.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--name=<replaceable>file</replaceable></option></term>
          <listitem>
            <para>The name of the device node or a symlink to query</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--root</option></term>
          <listitem>
            <para>The udev root directory: <filename>/dev</filename>. If used in conjunction
            with a <command>name</command> or <command>symlink</command> query, the
            query returns the absolute path including the root directory.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--attribute-walk</option></term>
          <listitem>
            <para>Print all sysfs properties of the specified device that can be used
            in udev rules to match the specified device. It prints all devices
            along the chain, up to the root of sysfs that can be used in udev rules.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--export</option></term>
          <listitem>
            <para>Print output as key/value pairs. Values are enclosed in single quotes.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--export-prefix=<replaceable>name</replaceable></option></term>
          <listitem>
            <para>Add a prefix to the key name of exported values.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--device-id-of-file=<replaceable>file</replaceable></option></term>
          <listitem>
            <para>Print major/minor numbers of the underlying device, where the file
            lives on.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--export-db</option></term>
          <listitem>
            <para>Export the content of the udev database.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--convert-db</option></term>
          <listitem>
            <para>Convert the database of an earlier udev version to the current format. This
            is only useful on udev version upgrades, where the content of the old database might
            be needed for the running system, and it is not sufficient for it, to be re-created
            with the next bootup.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--version</option></term>
          <listitem>
            <para>Print version.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--help</option></term>
          <listitem>
            <para>Print help text.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>

    <refsect2><title>udevadm trigger <optional>options</optional></title>
      <para>Request device events from the kernel. Primarily used to replay events at system coldplug time.</para>
      <variablelist>
        <varlistentry>
          <term><option>--verbose</option></term>
          <listitem>
            <para>Print the list of devices which will be triggered.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--dry-run</option></term>
          <listitem>
            <para>Do not actually trigger the event.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--type=<replaceable>type</replaceable></option></term>
          <listitem>
            <para>Trigger a specific type of devices. Valid types are:
            <command>devices</command>, <command>subsystems</command>, <command>failed</command>.
            The default value is <command>devices</command>.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--action=<replaceable>action</replaceable></option></term>
          <listitem>
            <para>Type of event to be triggered. The default value is <command>change</command>.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--subsystem-match=<replaceable>subsystem</replaceable></option></term>
          <listitem>
            <para>Trigger events for devices which belong to a matching subsystem. This option
            can be specified multiple times and supports shell style pattern matching.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--subsystem-nomatch=<replaceable>subsystem</replaceable></option></term>
          <listitem>
            <para>Do not trigger events for devices which belong to a matching subsystem. This option
            can be specified multiple times and supports shell style pattern matching.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--attr-match=<replaceable>attribute</replaceable>=<replaceable>value</replaceable></option></term>
          <listitem>
            <para>Trigger events for devices with a matching sysfs attribute. If a value is specified
            along with the attribute name, the content of the attribute is matched against the given
            value using shell style pattern matching. If no value is specified, the existence of the
            sysfs attribute is checked. This option can be specified multiple times.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--attr-nomatch=<replaceable>attribute</replaceable>=<replaceable>value</replaceable></option></term>
          <listitem>
            <para>Do not trigger events for devices with a matching sysfs attribute. If a value is
            specified along with the attribute name, the content of the attribute is matched against
            the given value using shell style pattern matching. If no value is specified, the existence
            of the sysfs attribute is checked. This option can be specified multiple times.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--property-match=<replaceable>property</replaceable>=<replaceable>value</replaceable></option></term>
          <listitem>
            <para>Trigger events for devices with a matching property value. This option can be
            specified multiple times and supports shell style pattern matching.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--tag-match=<replaceable>property</replaceable></option></term>
          <listitem>
            <para>Trigger events for devices with a matching tag. This option can be
            specified multiple times.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--sysname-match=<replaceable>name</replaceable></option></term>
          <listitem>
            <para>Trigger events for devices with a matching sys device name. This option can be
            specified multiple times and supports shell style pattern matching.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>

    <refsect2><title>udevadm settle <optional>options</optional></title>
      <para>Watches the udev event queue, and exits if all current events are handled.</para>
      <variablelist>
        <varlistentry>
          <term><option>--timeout=<replaceable>seconds</replaceable></option></term>
          <listitem>
            <para>Maximum number of seconds to wait for the event queue to become empty.
            The default value is 180 seconds. A value of 0 will check if the queue is empty
            and always return immediately.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--seq-start=<replaceable>seqnum</replaceable></option></term>
          <listitem>
            <para>Wait only for events after the given sequence number.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--seq-end=<replaceable>seqnum</replaceable></option></term>
          <listitem>
            <para>Wait only for events before the given sequence number.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--exit-if-exists=<replaceable>file</replaceable></option></term>
          <listitem>
            <para>Stop waiting if file exists.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--quiet</option></term>
          <listitem>
            <para>Do not print any output, like the remaining queue entries when reaching the timeout.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--help</option></term>
          <listitem>
            <para>Print help text.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>

    <refsect2><title>udevadm control <replaceable>command</replaceable></title>
      <para>Modify the internal state of the running udev daemon.</para>
      <variablelist>
        <varlistentry>
          <term><option>--log-priority=<replaceable>value</replaceable></option></term>
          <listitem>
            <para>Set the internal log level of udevd. Valid values are the numerical
            syslog priorities or their textual representations: <option>err</option>,
            <option>info</option> and <option>debug</option>.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--stop-exec-queue</option></term>
          <listitem>
            <para>Signal udevd to stop executing new events. Incoming events
            will be queued.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--start-exec-queue</option></term>
          <listitem>
            <para>Signal udevd to enable the execution of events.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--reload-rules</option></term>
          <listitem>
            <para>Signal udevd to reload the rules files.
            The udev daemon detects changes automatically, this option is
            usually not needed. Reloading rules does not apply any changes
            to already existing devices.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--property=<replaceable>KEY</replaceable>=<replaceable>value</replaceable></option></term>
          <listitem>
            <para>Set a global property for all events.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--children-max=</option><replaceable>value</replaceable></term>
          <listitem>
            <para>Set the maximum number of events, udevd will handle at the
            same time.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--help</option></term>
          <listitem>
            <para>Print help text.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>

    <refsect2><title>udevadm monitor <optional>options</optional></title>
      <para>Listens to the kernel uevents and events sent out by a udev rule
      and prints the devpath of the event to the console. It can be used to analyze the
      event timing, by comparing the timestamps of the kernel uevent and the udev event.
      </para>
      <variablelist>
        <varlistentry>
          <term><option>--kernel</option></term>
          <listitem>
            <para>Print the kernel uevents.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--udev</option></term>
          <listitem>
            <para>Print the udev event after the rule processing.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--property</option></term>
          <listitem>
            <para>Also print the properties of the event.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--subsystem-match=<replaceable>string[/string]</replaceable></option></term>
          <listitem>
            <para>Filter events by subsystem[/devtype]. Only udev events with a matching subsystem value will pass.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--tag-match=<replaceable>string</replaceable></option></term>
          <listitem>
            <para>Filter events by property. Only udev events with a given tag attached will pass.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--help</option></term>
          <listitem>
            <para>Print help text.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>

    <refsect2><title>udevadm test <optional>options</optional> <replaceable>devpath</replaceable></title>
      <para>Simulate a udev event run for the given device, and print debug output.</para>
      <variablelist>
        <varlistentry>
          <term><option>--action=<replaceable>string</replaceable></option></term>
          <listitem>
            <para>The action string.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--subsystem=<replaceable>string</replaceable></option></term>
          <listitem>
            <para>The subsystem string.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term><option>--help</option></term>
          <listitem>
            <para>Print help text.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </refsect2>
  </refsect1>

  <refsect1><title>Author</title>
    <para>Written by Kay Sievers <email>kay.sievers@vrfy.org</email>.</para>
  </refsect1>

  <refsect1>
    <title>See Also</title>
    <para><citerefentry>
        <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum>
    </citerefentry>
    <citerefentry>
        <refentrytitle>udevd</refentrytitle><manvolnum>8</manvolnum>
    </citerefentry></para>
  </refsect1>
</refentry>
