chiark / gitweb /
[PATCH] rename strn*() macros to strmax
[elogind.git] / udev.8
diff --git a/udev.8 b/udev.8
index 21ec908b8213861f7436ba68c917db7bc9b86bf1..76b8913f034bf05039497e0d7b5a0adbb8643731 100644 (file)
--- a/udev.8
+++ b/udev.8
@@ -25,7 +25,7 @@ The default behavior of
 .B udev
 is to wait until all the sysfs files of the device chain are populated. If set
 .B udev
-will will continue, regardless of the state of the device representation.
+will continue, regardless of the state of the device representation.
 .SH "DESCRIPTION"
 .B udev
 creates or removes device node files usually located in the /dev directory.
@@ -151,16 +151,15 @@ file.
 Every line in the rules file defines the mapping between device attributes
 and the device file name. One ore more keys are specified to match a rule
 with the current device. If all keys are matching, the rule will be applied
-and the name is used for the device node. One or more optional symlinks
-targeting the node may be specified.
+and the name is used for the device node.
 .br
 If no matching rule is found, the default kernel device name is used.
 .P
-The line format is:
+Every rule consists of a list a comma separated fields:
 .sp
-.I key,[key,...] name [, symlink]
+.IR "key " ,[ "key " ,...] " name " [, " symlink" ]
 .sp
-where keys are:
+where possible fields are:
 .TP
 .B BUS
 Match the bus type of the device.
@@ -179,6 +178,9 @@ Match the topological position on bus, like physical port of USB device
 Match sysfs device attribute like label, vendor, USB serial number, SCSI UUID
 or file system label.  Up to 5 different sysfs files can be checked, with
 all of the values being required in order to match the rule.
+.br
+Trailing whitespace characters in the sysfs attribute value are ignored, if
+the key doesn't have any trailing whitespace characters by itself.
 .TP
 .B PROGRAM
 Call external program. This key is valid if the program returns successful.
@@ -196,13 +198,19 @@ Match the returned string of the last
 call. This key may used in any following rule after a
 .B PROGRAM
 call.
-.P
-The
+.TP
 .B NAME
-field given with the attribute
+The name of the node to be created. If the name field is omitted or its
+value is empty, the device will be ignored and no node will be created.
+.br
+If given with the attribute
 .BR NAME{ all_partitions }
-will  create all 15 partitions of a blockdevice.
+it will  create all 15 partitions of a blockdevice.
 This may be useful for removable media devices.
+.TP
+.B SYMLINK
+The name of a symlink targeting the node. Multiple symlinks may be
+specified by separating the names by the space character.
 .P
 .RB "The " NAME " ," SYMLINK " and " PROGRAM
 fields support simple printf-like string substitution:
@@ -292,6 +300,17 @@ video*:root:video:0660
 dsp1:::0666
 .fi
 .P
+The value
+.I $local
+can be substituted for a specific username.  In that case, udev will determine
+the current local user at the time of device node creation and substitute
+that username as the owner of the new device node.  This is useful, for
+example, to let hot-plugged devices, such as cameras, be owned by the user at
+the current console.  Note that if no user is currently logged in, or if udev
+otherwise fails to determine a current user, the
+.I default_owner
+value is used in lieu.
+.P
 A number of different fields in the above configuration files support a simple
 form of shell style pattern matching. It supports the following pattern characters:
 .TP