1 |
# /etc/udev/rules/50-udev.rules: device naming rules for udev |
# /etc/udev/rules/50-udev.rules: device naming rules for udev |
2 |
# $Header: /root/magellan-cvs/src/udev/udev.rules.magellan,v 1.8 2009-05-04 21:51:39 niro Exp $ |
# $Header: /root/magellan-cvs/src/udev/udev.rules.magellan,v 1.12 2010-04-06 23:46:22 niro Exp $ |
3 |
# |
# |
4 |
# There are a number of modifiers that are allowed to be used in some |
# There are a number of modifiers that are allowed to be used in some |
5 |
# of the different fields. They provide the following subsitutions: |
# of the different fields. They provide the following subsitutions: |
19 |
# |
# |
20 |
# initramfs:default |
# initramfs:default |
21 |
|
|
22 |
SUBSYSTEM=="block", SYMLINK+="block/%M:%m" |
SUBSYSTEM=="block", SYMLINK{unique}+="block/%M:%m" |
23 |
SUBSYSTEM!="block", SYMLINK+="char/%M:%m" |
SUBSYSTEM!="block", SYMLINK{unique}+="char/%M:%m" |
24 |
|
|
25 |
KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" |
KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" |
26 |
KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" |
KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" |
27 |
KERNEL=="ptmx", GROUP="tty", MODE="0666" |
KERNEL=="ptmx", GROUP="tty", MODE="0666" |
28 |
KERNEL=="tty", GROUP="tty", MODE="0666" |
KERNEL=="tty", GROUP="tty", MODE="0666" |
29 |
KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620" |
KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620" |
|
KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty" |
|
30 |
KERNEL=="console", MODE="0600" |
KERNEL=="console", MODE="0600" |
31 |
|
KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty" |
32 |
|
|
33 |
# serial |
# serial |
34 |
KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*", GROUP="dialout" |
KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout" |
35 |
KERNEL=="ppp", MODE="0600" |
KERNEL=="ppp", MODE="0600" |
36 |
KERNEL=="mwave", NAME="modems/mwave", GROUP="dialout" |
KERNEL=="mwave", GROUP="dialout" |
37 |
KERNEL=="hvc*|hvsi*", GROUP="dialout" |
KERNEL=="hvc*|hvsi*", GROUP="dialout" |
38 |
|
|
39 |
|
# virtio serial / console ports |
40 |
|
KERNEL=="vport*", SYMLINK+="virtio-ports/$ATTR{name}" |
41 |
|
|
42 |
# mem |
# mem |
43 |
KERNEL=="null|zero|full|random|urandom", MODE="0666" |
KERNEL=="null|zero|full|random|urandom", MODE="0666" |
44 |
KERNEL=="mem|kmem|port|nvram", GROUP="kmem", MODE="0640" |
KERNEL=="mem|kmem|port|nvram", GROUP="kmem", MODE="0640" |
45 |
|
|
46 |
# input |
# input |
47 |
KERNEL=="mouse*|mice|event*", NAME="input/%k", MODE="0640" |
KERNEL=="mouse*|mice|event*", MODE="0640" |
48 |
KERNEL=="ts[0-9]*|uinput", NAME="input/%k", MODE="0640" |
KERNEL=="ts[0-9]*|uinput", MODE="0640" |
49 |
KERNEL=="js[0-9]*", NAME="input/%k", MODE="0644" |
KERNEL=="js[0-9]*", MODE="0644" |
50 |
|
|
51 |
# video4linux |
# video4linux |
52 |
SUBSYSTEM=="video4linux", GROUP="video" |
SUBSYSTEM=="video4linux", GROUP="video" |
56 |
|
|
57 |
# graphics |
# graphics |
58 |
KERNEL=="agpgart", MODE="0600", GROUP="video" |
KERNEL=="agpgart", MODE="0600", GROUP="video" |
|
KERNEL=="card[0-9]*", NAME="dri/%k" |
|
59 |
KERNEL=="pmu", GROUP="video" |
KERNEL=="pmu", GROUP="video" |
60 |
KERNEL=="nvidia*|nvidiactl*", GROUP="video" |
KERNEL=="nvidia*|nvidiactl*", GROUP="video" |
61 |
SUBSYSTEM=="graphics", GROUP="video" |
SUBSYSTEM=="graphics", GROUP="video" |
62 |
SUBSYSTEM=="drm", GROUP="video" |
SUBSYSTEM=="drm", GROUP="video" |
63 |
|
|
64 |
|
# sound |
65 |
|
SUBSYSTEM=="sound", GROUP="audio" |
66 |
|
KERNEL=="mixer0", SYMLINK+="mixer" |
67 |
|
|
68 |
# DVB (video) |
# DVB (video) |
69 |
SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="?*", NAME="dvb/adapter$env{DVB_ADAPTER_NUM}/$env{DVB_DEVICE_TYPE}$env{DVB_DEVICE_NUM}", GROUP="video" |
SUBSYSTEM=="dvb", GROUP="video" |
|
SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video" |
|
70 |
|
|
71 |
# Firewire |
# FireWire (firewire-core driver: IIDC devices, AV/C devices) |
72 |
KERNEL=="dv1394[0-9]*", NAME="dv1394/%n", GROUP="video" |
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", GROUP="video" |
73 |
KERNEL=="video1394[0-9]*", NAME="video1394/%n", GROUP="video" |
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video" |
74 |
|
|
75 |
|
# FireWire (deprecated dv1394 and video1394 drivers) |
76 |
|
KERNEL=="dv1394-[0-9]*", NAME="dv1394/%n", GROUP="video" |
77 |
|
KERNEL=="video1394-[0-9]*", NAME="video1394/%n", GROUP="video" |
78 |
|
|
79 |
# libusb device nodes |
# libusb device nodes |
80 |
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0664" |
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664" |
81 |
|
|
82 |
# printer |
# printer |
83 |
KERNEL=="parport[0-9]*", GROUP="lp" |
KERNEL=="parport[0-9]*", GROUP="lp" |
84 |
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp" |
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp" |
85 |
SUBSYSTEM=="ppdev", GROUP="lp" |
SUBSYSTEM=="ppdev", GROUP="lp" |
86 |
SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp" |
SUBSYSTEM=="usb", KERNEL=="lp*", SYMLINK+="usb%k", GROUP="lp" |
87 |
KERNEL=="lp[0-9]*", GROUP="lp" |
KERNEL=="lp[0-9]*", GROUP="lp" |
88 |
KERNEL=="irlpt[0-9]*", GROUP="lp" |
KERNEL=="irlpt[0-9]*", GROUP="lp" |
89 |
|
# hplip and cups 1.4+ use raw USB devices, so permissions should be similar to |
90 |
|
# the ones from the old usblp kernel module |
91 |
|
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="", IMPORT{program}="usb_id --export %p" |
92 |
|
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}==":0701*:", GROUP="lp", MODE="0664" |
93 |
|
|
94 |
# block |
# block |
95 |
SUBSYSTEM=="block", GROUP="disk" |
SUBSYSTEM=="block", GROUP="disk" |
96 |
|
|
97 |
# floppy |
# floppy |
98 |
KERNEL=="fd[0-9]", GROUP="floppy" |
SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy" |
|
KERNEL=="fd[0-9]", ACTION=="add", ATTRS{cmos}=="?*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0640 -G floppy $root/%k" |
|
|
KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions" |
|
99 |
|
|
100 |
# cdrom |
# cdrom |
101 |
SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom" |
SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom" |
102 |
SUBSYSTEM=="block", KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="cdrom", GROUP="cdrom" |
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom" |
103 |
SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom" |
KERNEL=="pktcdvd[0-9]*", GROUP="cdrom" |
104 |
KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k", GROUP="cdrom" |
KERNEL=="pktcdvd", GROUP="cdrom" |
|
KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrom" |
|
105 |
|
|
106 |
# tape |
# tape |
107 |
KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="tape" |
KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="tape" |
108 |
KERNEL=="pt[0-9]*|npt[0-9]*|pht[0-9]*", GROUP="tape" |
KERNEL=="pt[0-9]*|npt[0-9]*|pht[0-9]*", GROUP="tape" |
109 |
SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape" |
SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape" |
110 |
|
|
111 |
# block-releated |
# block-related |
112 |
KERNEL=="sch[0-9]*", GROUP="disk" |
KERNEL=="sch[0-9]*", GROUP="disk" |
113 |
SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk" |
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk" |
114 |
KERNEL=="pg[0-9]*", GROUP="disk" |
KERNEL=="pg[0-9]*", GROUP="disk" |
115 |
KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk" |
KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk" |
116 |
KERNEL=="rawctl", NAME="raw/rawctl", GROUP="disk" |
KERNEL=="rawctl", GROUP="disk" |
117 |
SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk" |
SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk" |
118 |
SUBSYSTEM=="bsg", NAME="bsg/%k" |
SUBSYSTEM=="aoe", GROUP="disk", MODE="0220" |
|
SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk", MODE="0220" |
|
119 |
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440" |
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440" |
120 |
|
|
121 |
# network |
# network |
122 |
KERNEL=="tun", NAME="net/%k", MODE="0666" |
KERNEL=="tun", MODE="0666" |
123 |
|
KERNEL=="rfkill", MODE="0644" |
124 |
|
|
125 |
# CPU |
# CPU |
126 |
KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid" |
KERNEL=="cpu[0-9]*", MODE="0444" |
|
KERNEL=="msr[0-9]*", NAME="cpu/%n/msr" |
|
|
KERNEL=="microcode", NAME="cpu/microcode", MODE="0600" |
|
127 |
|
|
128 |
# miscellaneous |
# miscellaneous |
129 |
KERNEL=="fuse", MODE="0666" |
KERNEL=="fuse", MODE="0666" |
130 |
SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc" |
SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc" |
|
KERNEL=="auer[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="hw_random", NAME="hwrng" |
|
131 |
KERNEL=="mmtimer", MODE="0644" |
KERNEL=="mmtimer", MODE="0644" |
132 |
KERNEL=="rflash[0-9]*", MODE="0400" |
KERNEL=="rflash[0-9]*", MODE="0400" |
133 |
KERNEL=="rrom[0-9]*", MODE="0400" |
KERNEL=="rrom[0-9]*", MODE="0400" |
|
KERNEL=="sxctl", NAME="specialix_sxctl" |
|
|
KERNEL=="rioctl", NAME="specialix_rioctl" |
|
|
KERNEL=="iowarrior[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="hiddev[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="legousbtower[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="dabusb[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="usbdpfp[0-9]*", NAME="usb/%k" |
|
|
KERNEL=="cpad[0-9]*", NAME="usb/%k" |
|
134 |
|
|
135 |
# do not delete static device nodes |
# do not delete static device nodes |
|
ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove" |
|
136 |
ACTION=="remove", NAME=="", TEST=="/lib/udev/devices/%k", OPTIONS+="ignore_remove" |
ACTION=="remove", NAME=="", TEST=="/lib/udev/devices/%k", OPTIONS+="ignore_remove" |
137 |
|
ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove" |