3 .\" The DragonFly Project. All rights reserved.
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\" notice, this list of conditions and the following disclaimer in
13 .\" the documentation and/or other materials provided with the
15 .\" 3. Neither the name of The DragonFly Project nor the names of its
16 .\" contributors may be used to endorse or promote products derived
17 .\" from this software without specific, prior written permission.
19 .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 .\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
22 .\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
23 .\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
24 .\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
25 .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
27 .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28 .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
29 .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 .Nd manipulate devfs rules
42 .Op Fl m Ar mount_point
48 .Op Fl m Ar mount_point
51 .Op Fl m Ar mount_point
57 provides an interface to manipulate the in-kernel
61 The options are as follows:
62 .Bl -tag -width indent
64 Load the ruleset specified by
67 It will not overwrite currently applied rules,
68 but just append the new ones.
70 Clear the current ruleset.
71 This does not reset the device nodes, but only clear out all stored rules
72 so that they are not applied to new nodes.
73 It is therefore recommended to use this command in conjunction with
76 Reads ruleset specified by
78 and then dumps its contents to stdout.
79 The rules will not be applied.
80 This option cannot be used in conjuction with any other option.
81 It is useful for checking the correct syntax and order of the specified ruleset
82 and will show the final interpretation as it would be applied.
84 Specifies the file containing the ruleset to be loaded.
87 for more information on rule syntax.
88 This option is a requirement for
93 Shows a usage message with a short description of
96 .It Fl m Ar mount_point
97 Specifies the mount point to which the loaded rules shall apply.
98 If this option is not specified, the rules will apply to all
103 argument does not accept wildcards and must be an absolute path.
107 nodes to their original status.
108 This does not clear the current ruleset and it is hence recommended
109 to use this command together with
113 Rules are specified one rule per line, with whitespace separated values.
114 Empty lines and lines beginning with a
117 Once applied, the rules are in effect for existing device nodes as well
119 Rules are applied in the order specified, thus later rules will override
124 rules can be either device names (? and * wildcards are allowed), device
125 types or existing groups.
126 Groups are referenced in rules by prefixing them with
128 A device type is one of the following list of special names:
130 .Bl -tag -offset indent -width ".Li D_DISK" -compact
132 disk devices/slices/partitions
136 (kernel) memory devices
141 Rule lines are of the following format:
142 .Bd -literal -offset indent
143 .Ic action Cm argument ...
155 .Bl -tag -width indent -offset indent
156 .It Ic group Ar group_name Ar name ...
157 This will group the specified names into a group of the specified
159 .It Ic include Ar file
160 Includes the specified rule file and processes its rules.
162 This will hide the device node(s) specified by
164 A hidden node will not appear in directory listings and all operations on
165 it will fail, except if it is open already.
166 By default, everything except
169 .It Ic jail Ar yes|no
172 argument will cause all following rules to only apply to mounts of
179 .It Ic link Ar device Ar path
181 rules will create a link node at the specified
185 The path is relative to the mountpoint being operated on (see
188 option), which is usually
195 has to be a single device node and specifying a device type or group (unless
196 it contains only one node) is not possible.
197 .It Ic perm Ar name Ar user:group Ar mode
200 rule will applies the specified mode (octal, see
207 This will show previously hidden nodes again.
210 .Bl -tag -width ".Pa /etc/devfs" -compact
215 Examples of valid names:
216 .Bd -literal -offset indent
224 Examples of valid rules:
225 .Bd -literal -offset indent
230 perm da0 uucp:dialer 0644
236 group g3 @g1 h @g2 i j k D_MEM
239 perm @g3 root:wheel 0644
244 group drives @disks @cdrom
246 group test @disks @g2 y
250 link da0 "my drives/my new da0"