mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-23 17:34:00 +03:00
730b9c1e14
This adds two things: - A new switch --uuid is added to "udevadm trigger". If specified a random UUID is associated with the synthettic uevent and it is printed to stdout. It may then be used manually to match up uevents as they propagate through the system. - The UUID logic is now implicitly enabled if "udevadm trigger --settle" is used, in order to wait for precisely the uevents we actually trigger. Fallback support is kept for pre-4.13 kernels (where the requests for trigger uevents with uuids results in EINVAL).
637 lines
29 KiB
XML
637 lines
29 KiB
XML
<?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="udevadm"
|
|
xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
|
|
<refentryinfo>
|
|
<title>udevadm</title>
|
|
<productname>systemd</productname>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>udevadm</refentrytitle>
|
|
<manvolnum>8</manvolnum>
|
|
</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 <optional>options</optional> <optional>devpath</optional></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm trigger <optional>options</optional> <optional>devpath</optional></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm settle <optional>options</optional></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm control <replaceable>option</replaceable></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm monitor <optional>options</optional></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm test <optional>options</optional> <replaceable>devpath</replaceable></command>
|
|
</cmdsynopsis>
|
|
<cmdsynopsis>
|
|
<command>udevadm test-builtin <optional>options</optional> <replaceable>command</replaceable> <replaceable>devpath</replaceable></command>
|
|
</cmdsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1><title>Description</title>
|
|
<para><command>udevadm</command> expects a command and command
|
|
specific options. It controls the runtime behavior of
|
|
<command>systemd-udevd</command>, requests kernel events, manages
|
|
the event queue, and provides simple debugging mechanisms.</para>
|
|
</refsect1>
|
|
|
|
<refsect1><title>Options</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-d</option></term>
|
|
<term><option>--debug</option></term>
|
|
<listitem>
|
|
<para>Print debug messages to standard error. This option is implied in <command>udevadm test</command> and
|
|
<command>udevadm test-builtin</command> commands.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
|
|
<refsect2><title>udevadm info
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
<arg choice="opt" rep="repeat"><replaceable>devpath</replaceable>|<replaceable>file</replaceable>|<replaceable>unit</replaceable></arg>
|
|
</title>
|
|
|
|
<para>Query the udev database for device information.</para>
|
|
|
|
<para>Positional arguments should be used to specify one or more devices. Each one may be a device name
|
|
(in which case it must start with <filename>/dev/</filename>), a sys path (in which case it must start
|
|
with <filename>/sys/</filename>), or a systemd device unit name (in which case it must end with
|
|
<literal>.device</literal>, see
|
|
<citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-q</option></term>
|
|
<term><option>--query=<replaceable>TYPE</replaceable></option></term>
|
|
<listitem>
|
|
<para>Query the database for the specified type of device data.
|
|
Valid <replaceable>TYPE</replaceable>s are:
|
|
<constant>name</constant>, <constant>symlink</constant>,
|
|
<constant>path</constant>, <constant>property</constant>,
|
|
<constant>all</constant>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-p</option></term>
|
|
<term><option>--path=<replaceable>DEVPATH</replaceable></option></term>
|
|
<listitem>
|
|
<para>The <filename>/sys/</filename> path of the device to query, e.g.
|
|
<filename><optional>/sys/</optional>/class/block/sda</filename>. This option is an alternative to
|
|
the positional argument with a <filename>/sys/</filename> prefix. <command>udevadm info
|
|
--path=/class/block/sda</command> is equivalent to <command>udevadm info
|
|
/sys/class/block/sda</command>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-n</option></term>
|
|
<term><option>--name=<replaceable>FILE</replaceable></option></term>
|
|
<listitem>
|
|
<para>The name of the device node or a symlink to query,
|
|
e.g. <filename><optional>/dev/</optional>/sda</filename>. This option is an alternative to the
|
|
positional argument with a <filename>/dev/</filename> prefix. <command>udevadm info
|
|
--name=sda</command> is equivalent to <command>udevadm info /dev/sda</command>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-r</option></term>
|
|
<term><option>--root</option></term>
|
|
<listitem>
|
|
<para>Print absolute paths in <command>name</command> or <command>symlink</command>
|
|
query.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-a</option></term>
|
|
<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>-x</option></term>
|
|
<term><option>--export</option></term>
|
|
<listitem>
|
|
<para>Print output as key/value pairs. Values are enclosed in single quotes.
|
|
This takes effects only when <option>--query=property</option> or
|
|
<option>--device-id-of-file=<replaceable>FILE</replaceable></option> is specified.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-P</option></term>
|
|
<term><option>--export-prefix=<replaceable>NAME</replaceable></option></term>
|
|
<listitem>
|
|
<para>Add a prefix to the key name of exported values.
|
|
This implies <option>--export</option>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-d</option></term>
|
|
<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.
|
|
If this is specified, all positional arguments are ignored.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-e</option></term>
|
|
<term><option>--export-db</option></term>
|
|
<listitem>
|
|
<para>Export the content of the udev database.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-c</option></term>
|
|
<term><option>--cleanup-db</option></term>
|
|
<listitem>
|
|
<para>Cleanup the udev database.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-w<optional>SECONDS</optional></option></term>
|
|
<term><option>--wait-for-initialization<optional>=SECONDS</optional></option></term>
|
|
<listitem>
|
|
<para>Wait for device to be initialized. If argument <replaceable>SECONDS</replaceable>
|
|
is not specified, the default is to wait forever.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
|
|
<para>The generated output shows the current device database entry in a terse format. Each line shown
|
|
is prefixed with one of the following characters:</para>
|
|
|
|
<table>
|
|
<title><command>udevadm info</command> output prefixes</title>
|
|
<tgroup cols='2' align='left' colsep='1' rowsep='1'>
|
|
<colspec colname="prefix" />
|
|
<colspec colname="meaning" />
|
|
<thead>
|
|
<row>
|
|
<entry>Prefix</entry>
|
|
<entry>Meaning</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><literal>P:</literal></entry>
|
|
<entry>Device path in <filename>/sys/</filename></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>N:</literal></entry>
|
|
<entry>Kernel device node name</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>L:</literal></entry>
|
|
<entry>Device node symlink priority</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>S:</literal></entry>
|
|
<entry>Device node symlink</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>E:</literal></entry>
|
|
<entry>Device property</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm trigger
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
<arg choice="opt"><replaceable>devpath</replaceable>|<replaceable>file</replaceable>|<replaceable>unit</replaceable></arg>
|
|
</title>
|
|
<para>Request device events from the kernel. Primarily used to replay events at system coldplug time.</para>
|
|
|
|
<para>Takes device specifications as positional arguments. See the description of <command>info</command>
|
|
above.</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-v</option></term>
|
|
<term><option>--verbose</option></term>
|
|
<listitem>
|
|
<para>Print the list of devices which will be triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-n</option></term>
|
|
<term><option>--dry-run</option></term>
|
|
<listitem>
|
|
<para>Do not actually trigger the event.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-q</option></term>
|
|
<term><option>--quiet</option></term>
|
|
<listitem>
|
|
<para>Suppress error logging in triggering events.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-t</option></term>
|
|
<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>.
|
|
The default value is <command>devices</command>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-c</option></term>
|
|
<term><option>--action=<replaceable>ACTION</replaceable></option></term>
|
|
<listitem>
|
|
<para>Type of event to be triggered. Possible actions are <literal>add</literal>,
|
|
<literal>remove</literal>, <literal>change</literal>, <literal>move</literal>,
|
|
<literal>online</literal>, <literal>offline</literal>, <literal>bind</literal>,
|
|
and <literal>unbind</literal>. Also, the special value <literal>help</literal> can be used
|
|
to list the possible actions. The default value is <literal>change</literal>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-s</option></term>
|
|
<term><option>--subsystem-match=<replaceable>SUBSYSTEM</replaceable></option></term>
|
|
<listitem>
|
|
<para>Trigger events for devices which belong to a
|
|
matching subsystem. This option supports shell style pattern matching.
|
|
When this option is specified more than once, then each matching result is ORed, that is,
|
|
all the devices in each subsystem are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-S</option></term>
|
|
<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
|
|
supports shell style pattern matching. When this option is specified more than once,
|
|
then each matching result is ANDed, that is, devices which do not match all specified
|
|
subsystems are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-a</option></term>
|
|
<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. When this option is specified multiple times, then each matching result is ANDed,
|
|
that is, only devices which have all specified attributes are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-A</option></term>
|
|
<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. When this option is specified multiple times, then each matching result is ANDed,
|
|
that is, only devices which have none of the specified attributes are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-p</option></term>
|
|
<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 supports shell style
|
|
pattern matching. When this option is specified more than once, then each matching result is ORed,
|
|
that is, devices which have one of the specified properties are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-g</option></term>
|
|
<term><option>--tag-match=<replaceable>PROPERTY</replaceable></option></term>
|
|
<listitem>
|
|
<para>Trigger events for devices with a matching tag. When this option is specified multiple times,
|
|
then each matching result is ANDed, that is, devices which have all specified tags are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-y</option></term>
|
|
<term><option>--sysname-match=<replaceable>NAME</replaceable></option></term>
|
|
<listitem>
|
|
<para>Trigger events for devices for which the last component (i.e. the filename) of the
|
|
<filename>/sys/</filename> path matches the specified <replaceable>PATH</replaceable>. This option
|
|
supports shell style pattern matching. When this option is specified more than once, then each
|
|
matching result is ORed, that is, all devices which have any of the specified
|
|
<replaceable>NAME</replaceable> are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--name-match=<replaceable>NAME</replaceable></option></term>
|
|
<listitem>
|
|
<para>Trigger events for devices with a matching device path. When this option is specified more than once,
|
|
then each matching result is ORed, that is, all specified devices are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-b</option></term>
|
|
<term><option>--parent-match=<replaceable>SYSPATH</replaceable></option></term>
|
|
<listitem>
|
|
<para>Trigger events for all children of a given device. When this option is specified more than once,
|
|
then each matching result is ORed, that is, all children of each specified device are triggered.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-w</option></term>
|
|
<term><option>--settle</option></term>
|
|
<listitem>
|
|
<para>Apart from triggering events, also waits for those events to
|
|
finish. Note that this is different from calling <command>udevadm
|
|
settle</command>. <command>udevadm settle</command> waits for all
|
|
events to finish. This option only waits for events triggered by
|
|
the same command to finish.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--uuid</option></term>
|
|
<listitem>
|
|
<para>Trigger the synthetic device events, and associate a randomized UUID with each. These UUIDs
|
|
are printed to standard output, one line for each event. These UUIDs are included in the uevent
|
|
environment block (in the <literal>SYNTH_UUID=</literal> property) and may be used to track
|
|
delivery of the generated events.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--wait-daemon[=<replaceable>SECONDS</replaceable>]</option></term>
|
|
<listitem>
|
|
<para>Before triggering uevents, wait for systemd-udevd daemon to be initialized.
|
|
Optionally takes timeout value. Default timeout is 5 seconds. This is equivalent to invoke
|
|
invoking <command>udevadm control --ping</command> before <command>udevadm trigger</command>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
|
|
<para>In addition, optional positional arguments can be used
|
|
to specify device names or sys paths. They must start with
|
|
<filename>/dev/</filename> or <filename>/sys/</filename>
|
|
respectively.</para>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm settle
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
</title>
|
|
<para>Watches the udev event queue, and exits if all current events are handled.</para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-t</option></term>
|
|
<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 120 seconds. A
|
|
value of 0 will check if the queue is empty and always
|
|
return immediately. A non-zero value will return an exit
|
|
code of 0 if queue became empty before timeout was reached,
|
|
non-zero otherwise.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-E</option></term>
|
|
<term><option>--exit-if-exists=<replaceable>FILE</replaceable></option></term>
|
|
<listitem>
|
|
<para>Stop waiting if file exists.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
|
|
<para>See
|
|
<citerefentry><refentrytitle>systemd-udev-settle.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
|
for more information.</para>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm control <replaceable>option</replaceable></title>
|
|
<para>Modify the internal state of the running udev daemon.</para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-e</option></term>
|
|
<term><option>--exit</option></term>
|
|
<listitem>
|
|
<para>Signal and wait for systemd-udevd to exit. No option except for
|
|
<option>--timeout</option> can be specified after this option.
|
|
Note that <filename>systemd-udevd.service</filename> contains
|
|
<option>Restart=always</option> and so as a result, this option restarts systemd-udevd.
|
|
If you want to stop <filename>systemd-udevd.service</filename>, please use the following:
|
|
<programlisting>systemctl stop systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-udevd.service</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-l</option></term>
|
|
<term><option>--log-level=<replaceable>value</replaceable></option></term>
|
|
<listitem>
|
|
<para>Set the internal log level of
|
|
<filename>systemd-udevd</filename>. Valid values are the
|
|
numerical syslog priorities or their textual
|
|
representations: <option>emerg</option>,
|
|
<option>alert</option>, <option>crit</option>,
|
|
<option>err</option>, <option>warning</option>,
|
|
<option>notice</option>, <option>info</option>, and
|
|
<option>debug</option>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-s</option></term>
|
|
<term><option>--stop-exec-queue</option></term>
|
|
<listitem>
|
|
<para>Signal systemd-udevd to stop executing new events. Incoming events
|
|
will be queued.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-S</option></term>
|
|
<term><option>--start-exec-queue</option></term>
|
|
<listitem>
|
|
<para>Signal systemd-udevd to enable the execution of events.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-R</option></term>
|
|
<term><option>--reload</option></term>
|
|
<listitem>
|
|
<para>Signal systemd-udevd to reload the rules files and other databases like the kernel
|
|
module index. Reloading rules and databases does not apply any changes to already
|
|
existing devices; the new configuration will only be applied to new events.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-p</option></term>
|
|
<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>-m</option></term>
|
|
<term><option>--children-max=</option><replaceable>value</replaceable></term>
|
|
<listitem>
|
|
<para>Set the maximum number of events, systemd-udevd will handle at the
|
|
same time.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>--ping</option></term>
|
|
<listitem>
|
|
<para>Send a ping message to systemd-udevd and wait for the reply. This may be useful to check that
|
|
systemd-udevd daemon is running.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-t</option></term>
|
|
<term><option>--timeout=</option><replaceable>seconds</replaceable></term>
|
|
<listitem>
|
|
<para>The maximum number of seconds to wait for a reply from systemd-udevd.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm monitor
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
</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>-k</option></term>
|
|
<term><option>--kernel</option></term>
|
|
<listitem>
|
|
<para>Print the kernel uevents.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-u</option></term>
|
|
<term><option>--udev</option></term>
|
|
<listitem>
|
|
<para>Print the udev event after the rule processing.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-p</option></term>
|
|
<term><option>--property</option></term>
|
|
<listitem>
|
|
<para>Also print the properties of the event.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-s</option></term>
|
|
<term><option>--subsystem-match=<replaceable>string[/string]</replaceable></option></term>
|
|
<listitem>
|
|
<para>Filter kernel uevents and udev events by subsystem[/devtype]. Only events with a matching subsystem value will pass.
|
|
When this option is specified more than once, then each matching result is ORed, that is, all devices in the specified
|
|
subsystems are monitored.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-t</option></term>
|
|
<term><option>--tag-match=<replaceable>string</replaceable></option></term>
|
|
<listitem>
|
|
<para>Filter udev events by tag. Only udev events with a given tag attached will pass.
|
|
When this option is specified more than once, then each matching result is ORed, that is, devices which have one of the
|
|
specified tags are monitored.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm test
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
<arg><replaceable>devpath</replaceable></arg>
|
|
</title>
|
|
<para>Simulate a udev event run for the given device, and print debug output.</para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-a</option></term>
|
|
<term><option>--action=<replaceable>ACTION</replaceable></option></term>
|
|
<listitem>
|
|
<para>Type of event to be simulated. Possible actions are <literal>add</literal>,
|
|
<literal>remove</literal>, <literal>change</literal>, <literal>move</literal>,
|
|
<literal>online</literal>, <literal>offline</literal>, <literal>bind</literal>,
|
|
and <literal>unbind</literal>. Also, the special value <literal>help</literal> can be used
|
|
to list the possible actions. The default value is <literal>add</literal>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-N</option></term>
|
|
<term><option>--resolve-names=<constant>early</constant>|<constant>late</constant>|<constant>never</constant></option></term>
|
|
<listitem>
|
|
<para>Specify when udevadm should resolve names of users
|
|
and groups. When set to <constant>early</constant> (the
|
|
default), names will be resolved when the rules are
|
|
parsed. When set to <constant>late</constant>, names will
|
|
be resolved for every event. When set to
|
|
<constant>never</constant>, names will never be resolved
|
|
and all devices will be owned by root.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
</refsect2>
|
|
|
|
<refsect2><title>udevadm test-builtin
|
|
<arg choice="opt"><replaceable>options</replaceable></arg>
|
|
<arg><replaceable>command</replaceable></arg>
|
|
<arg><replaceable>devpath</replaceable></arg>
|
|
</title>
|
|
<para>Run a built-in command <replaceable>COMMAND</replaceable>
|
|
for device <replaceable>DEVPATH</replaceable>, and print debug
|
|
output.</para>
|
|
<variablelist>
|
|
<xi:include href="standard-options.xml" xpointer="help" />
|
|
</variablelist>
|
|
</refsect2>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
<para><citerefentry>
|
|
<refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum>
|
|
</citerefentry>,
|
|
<citerefentry>
|
|
<refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum>
|
|
</citerefentry></para>
|
|
</refsect1>
|
|
</refentry>
|