1# There are a number of modifiers that are allowed to be used in some of the
2# fields.  See the udev man page for a full description of them.
3#
4# See the udev.rules.examples file for more examples of how to create rules
5#
6
7# permissions for IDE CD devices
8SUBSYSTEMS=="ide", KERNEL=="*[!0-9]", PROGRAM="/bin/cat /proc/ide/%k/media", RESULT=="cdrom*", NAME="%k", GROUP="cdrom", MODE="0660"
9
10# permissions for SCSI cd/sg/tape devices
11SUBSYSTEMS=="scsi", KERNEL=="s[grt][0-9]*", ATTRS{type}=="5", NAME="%k", GROUP="cdrom", MODE="0660"
12
13# USB devices
14KERNEL=="hiddev*",	NAME="usb/%k"
15KERNEL=="auer*",		NAME="usb/%k"
16KERNEL=="legousbtower*",	NAME="usb/%k"
17KERNEL=="dabusb*",	NAME="usb/%k"
18SUBSYSTEMS=="usb", KERNEL=="lp[0-9]*",	NAME="usb/%k", GROUP="lp"
19
20# CAPI devices
21KERNEL=="capi",		NAME="capi20", SYMLINK="isdn/capi20"
22KERNEL=="capi*",		NAME="capi/%n"
23
24# Network devices
25KERNEL=="tun",		NAME="net/%k"
26
27# permissions
28KERNEL=="pl2303",        NAME="%k", OWNER="500",  GROUP="500",  MODE="0666"
29KERNEL=="visor",         NAME="%k", OWNER="root", GROUP="uucp", MODE="0666"
30KERNEL=="camera*"        NAME="%k", OWNER="root",  GROUP="camera",  MODE="0666"
31
32# console devices
33KERNEL=="console"        NAME="%k", OWNER="root", GROUP="tty",  MODE="0600"
34KERNEL=="tty",           NAME="%k", OWNER="root", GROUP="tty",  MODE="0666"
35KERNEL=="tty[0-9]*",     NAME="%k", OWNER="root", GROUP="tty",  MODE="0660"
36KERNEL=="vcs*",          NAME="%k", OWNER="root", GROUP="tty",  MODE="0620"
37KERNEL=="tty[CIS]*",     NAME="%k", OWNER="root", GROUP="uucp", MODE="0660"
38KERNEL=="ttyUB[0-9]",    NAME="%k", OWNER="root", GROUP="uucp", MODE="0660"
39KERNEL=="ttyUSB0",       NAME="%k", OWNER="root", GROUP="uucp", MODE="0660"
40KERNEL=="ttyUSB1",       NAME="%k", OWNER="root"  GROUP="uucp", MODE="0666"
41
42# pty devices
43KERNEL=="ptmx"           NAME="%k", OWNER="root", GROUP="tty",  MODE="0666"
44KERNEL=="pty[p-za-e][0-9a-f]*" NAME="%k", OWNER="root", GROUP="tty",  MODE="0666"
45KERNEL=="tty[p-za-e][0-9a-f]*" NAME="%k", OWNER="root", GROUP="tty",  MODE="0666"
46KERNEL=="cu[abiu]*"      NAME="%k", OWNER="root", GROUP="uucp",  MODE="0660"
47
48# sound devices
49KERNEL=="audio*"         NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
50KERNEL=="beep"           NAME="%k", OWNER="root", GROUP="audio", MODE="0644"
51KERNEL=="dsp*"           NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
52KERNEL=="midi*"          NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
53KERNEL=="mixer*"         NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
54KERNEL=="music"          NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
55KERNEL=="sequencer*"     NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
56KERNEL=="controlC[0-9]*", NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
57KERNEL=="hw[CD0-9]*",     NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
58KERNEL=="pcm[CD0-9cp]*",  NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
59KERNEL=="midiC[D0-9]*",   NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
60KERNEL=="timer",          NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
61KERNEL=="seq",            NAME="snd/%k", OWNER="root", GROUP="audio",  MODE="0666"
62KERNEL=="sndstat"        NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
63KERNEL=="speaker"        NAME="%k", OWNER="root", GROUP="audio", MODE="0644"
64KERNEL=="sound/*"        NAME="%k", OWNER="root", GROUP="audio", MODE="0666"
65KERNEL=="admmidi*"       NAME="%k", OWNER="root", GROUP="audio", MODE="0666"
66KERNEL=="adsp*"          NAME="%k", OWNER="root", GROUP="audio", MODE="0666"
67KERNEL=="aload*"         NAME="%k", OWNER="root", GROUP="audio",  MODE="0666"
68KERNEL=="amidi*"         NAME="%k", OWNER="root", GROUP="audio", MODE="0666"
69KERNEL=="amixer*"        NAME="%k", OWNER="root", GROUP="audio", MODE="0666"
70
71# input devices (mouse, joystick, etc)
72KERNEL=="mice",		NAME="input/%k", OWNER="root", GROUP="root", MODE="0644"
73KERNEL=="mouse*",	NAME="input/%k", OWNER="root", GROUP="root", MODE="0644"
74KERNEL=="event*",	NAME="input/%k", OWNER="root", GROUP="root", MODE="0644"
75KERNEL=="js*",		NAME="input/%k", OWNER="root", GROUP="root", MODE="0644"
76KERNEL=="ts*",		NAME="input/%k", OWNER="root", GROUP="root", MODE="0644"
77KERNEL=="input/js*"      NAME="%k", OWNER="root", GROUP="games",0 MODE="0666"
78KERNEL=="djs[0-3]"       NAME="%k", OWNER="root", GROUP="games", MODE="0660"
79KERNEL=="psaux"          NAME="%k", OWNER="root", GROUP="sys",  MODE="0660"
80KERNEL=="crash"          NAME="%k", OWNER="root", GROUP="root", MODE="0660"
81KERNEL=="logibm"         NAME="%k", OWNER="root", GROUP="sys",  MODE="0660"
82KERNEL=="jbm"            NAME="%k", OWNER="root", GROUP="sys",  MODE="0660"
83KERNEL=="hwtrap"         NAME="%k", OWNER="root", GROUP="root", MODE="0644"
84KERNEL=="inportbm"       NAME="%k", OWNER="root", GROUP="sys",  MODE="0660"
85KERNEL=="sexec"          NAME="%k", OWNER="root", GROUP="root", MODE="0660"
86KERNEL=="jsflash"        NAME="%k", OWNER="root", GROUP="root", MODE="0660"
87
88# power manager device
89KERNEL=="apm_bios"        NAME="%k", OWNER="root", GROUP="root", MODE="0644"
90
91# printer device
92KERNEL=="lp[0-9]"         NAME="%k", OWNER="root", GROUP="lp", MODE="0660"
93KERNEL=="parport*"        NAME="%k", OWNER="root", GROUP="lp", MODE="0660"
94
95# video devices
96KERNEL=="card*"        NAME="dri/card%n", OWNER="root", GROUP="video", MODE="0666"
97KERNEL=="fb[0-9]"         NAME="%k", OWNER="root", GROUP="video",  MODE="0660"
98KERNEL=="agpgart"         NAME="%k", OWNER="root", GROUP="video", MODE="0660"
99KERNEL=="nvidia*"         NAME="%k", OWNER="root", GROUP="video", MODE="0666"
100KERNEL=="video*"          NAME="%k", OWNER="root", GROUP="video",  MODE="0660"
101KERNEL=="vbi*"            NAME="%k", OWNER="root", GROUP="video", MODE="0660"
102KERNEL=="dvb*",	PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; A=$${K%%%%.*}; D=$${K#*.}; echo dvb/adapter$$A/$$D'", NAME="%c", GROUP="video", MODE="0660"
103
104# DISK devices
105KERNEL=="ed[ab]*"         NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
106KERNEL=="gscd0"           NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
107KERNEL=="initrd"          NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
108KERNEL=="lmscd"           NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
109KERNEL=="mcd*"            NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
110KERNEL=="md*"             NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
111KERNEL=="mtd*"            NAME="%k", OWNER="root", GROUP="disk", MODE="0640"
112KERNEL=="userdma"         NAME="%k", OWNER="root", GROUP="root", MODE="0660"
113
114# floppy devices
115KERNEL=="fd[0-3]*"        NAME="%k", OWNER="root", GROUP="floppy", MODE="0660"
116KERNEL=="fd0"             SYMLINK="floppy"
117
118# permissions for removable devices like cardreaders or sticks
119KERNEL=="sd*", ATTRS{scsi_level}=="3", ATTRS{type}=="0", NAME="%k", GROUP="storage"
120
121# permissions for firewire external drives
122KERNEL=="sd*", ATTRS{scsi_level}=="5", NAME="%k", GROUP="storage"
123
124# permissions for usb to scsi external adapters
125KERNEL=="sd*", ATTRS{scsi_level}=="3", ATTRS{type}=="7", NAME="%k", GROUP="storage"
126
127# IDE devices (hd, cdrom)
128KERNEL=="hd*"             NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
129KERNEL=="ht0"             NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
130
131# RAID IDE
132KERNEL=="ataraid[0-9]*"   NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
133KERNEL=="ataraid/*"       NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
134
135# SCSI devices
136KERNEL=="scsi/*/cd"       NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
137KERNEL=="scsi/*"          NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
138KERNEL=="sd[a-h]*"        NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
139KERNEL=="s[rt][0-9]*"     NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
140KERNEL=="scd*"            NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
141
142# generic scsi devices
143KERNEL=="sg*"             NAME="%k", OWNER="root", GROUP="root",   MODE="0600"
144
145# old CD-ROM
146KERNEL=="sbpcd*"          NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
147
148# loop devices
149KERNEL=="loop[0-9]*"      NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
150
151# network block devices
152KERNEL=="nb[0-7]"         NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
153KERNEL=="nht0"            NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
154KERNEL=="npt[0-3]"        NAME="%k", OWNER="root", GROUP="disk",   MODE="0660"
155KERNEL=="n[qrs]*"         NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
156
157# memory access devices
158KERNEL=="kmem"         NAME="%k", OWNER="root", GROUP="kmem",   MODE="0640"
159KERNEL=="mem"          NAME="%k", OWNER="root", GROUP="kmem",   MODE="0640"
160KERNEL=="null"         NAME="%k", OWNER="root", GROUP="sys",    MODE="0666"
161KERNEL=="nvram"        NAME="%k", OWNER="root", GROUP="root",   MODE="0640"
162KERNEL=="port"         NAME="%k", OWNER="root", GROUP="kmem",   MODE="0640"
163KERNEL=="ram[0-9]*"    NAME="%k", OWNER="root", GROUP="disk",   MODE="0640"
164KERNEL=="random"       NAME="%k", OWNER="root", GROUP="root",   MODE="0644"
165KERNEL=="rtc"          NAME="%k", OWNER="root", GROUP="root",   MODE="0444"
166KERNEL=="urandom"      NAME="%k", OWNER="root", GROUP="root",   MODE="0644"
167KERNEL=="full"         NAME="%k", OWNER="root", GROUP="sys",    MODE="0666"
168KERNEL=="zero"         NAME="%k", OWNER="root", GROUP="root",   MODE="0666"
169KERNEL=="raw[0-9]*"    NAME="raw/%k", OWNER="root", GROUP="disk", MODE="0660"
170KERNEL=="modreq"       NAME="%k", OWNER="root", GROUP="root",   MODE="0644"
171KERNEL=="msr"          NAME="%k", OWNER="root", GROUP="root",   MODE="0660"
172KERNEL=="profile*"     NAME="%k", OWNER="root", GROUP="root",   MODE="0640"
173
174# ISDN devices
175KERNEL=="isdn*"        NAME="%k", OWNER="root", GROUP="tty",    MODE="0660"
176
177# net devices
178KERNEL=="ippp*"        NAME="%k", OWNER="root", GROUP="root",   MODE="0644"
179KERNEL=="ipstate*"     NAME="%k", OWNER="root", GROUP="root",   MODE="0660"
180KERNEL=="spx"          NAME="%k", OWNER="root", GROUP="root",   MODE="0644"
181KERNEL=="fwmonitor*"   NAME="%k", OWNER="root", GROUP="root",   MODE="0660"
182
183# hotplug rules - module autoloading for different buses
184ACTION=="add", SUBSYSTEM=="pci", ENV{MODALIAS}=="*", RUN+="/sbin/modprobe $env{MODALIAS}"
185ACTION=="add", SUBSYSTEM=="usb", ENV{MODALIAS}=="*", RUN+="/sbin/modprobe $env{MODALIAS}"
186ACTION=="add", SUBSYSTEM=="pcmcia", ENV{MODALIAS}=="*", RUN+="/sbin/modprobe $env{MODALIAS}"
187ACTION=="add", SUBSYSTEM=="pcmcia", ENV{MODALIAS}=="*", RUN+="/bin/sh -c 'echo 1 > /sys/$DEVPATH/allow_func_id_match'"
188ACTION=="add", SUBSYSTEM=="ieee1394", ENV{MODALIAS}=="*", RUN+="/sbin/modprobe $env{MODALIAS}"
189ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="[07]", RUN+="/sbin/modprobe sd_mod"
190ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="14", RUN+="/sbin/modprobe sd_mod"
191ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="[45]", RUN+="/sbin/modprobe sr_mod"
192ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="1", ATTRS{vendor}=="Onstream", ATTRS{model}!="ADR*", RUN+="/sbin/modprobe osst"
193ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="1", ATTRS{vendor}=="Onstream", ATTRS{model}=="ADR*", RUN+="/sbin/modprobe st"
194ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="1", ATTRS{vendor}!="Onstream", RUN+="/sbin/modprobe st"
195ACTION=="add", SUBSYSTEM=="scsi", ATTRS{type}=="[23689]", RUN+="/sbin/modprobe sg"
196
197# firmware
198ACTION=="add", SUBSYSTEM=="firmware", ENV{FIRMWARE}=="*", RUN+="/lib/udev/firmware.sh"
199