1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
# do not edit this file, it will be overwritten on update
SUBSYSTEM=="block", SYMLINK+="block/%M:%m"
SUBSYSTEM!="block", SYMLINK+="char/%M:%m"
KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660", OPTIONS+="last_rule"
KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660", OPTIONS+="last_rule"
KERNEL=="ptmx", GROUP="tty", MODE="0666", OPTIONS+="last_rule"
KERNEL=="tty", GROUP="tty", MODE="0666", OPTIONS+="last_rule"
KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620", OPTIONS+="last_rule"
KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty", OPTIONS+="last_rule"
KERNEL=="console", MODE="0600", OPTIONS+="last_rule"
# serial
KERNEL=="tty[A-Z]*|pppox*|ircomm*|noz*", GROUP="uucp"
KERNEL=="ppp", MODE="0600", OPTIONS+="ignore_remove"
KERNEL=="mwave", NAME="modems/mwave", GROUP="uucp"
KERNEL=="hvc*|hvsi*", GROUP="uucp"
KERNEL=="lirc0", SYMLINK+="lirc"
# mem
KERNEL=="null|zero|full|random|urandom", MODE="0666"
KERNEL=="null", SYMLINK+="XOR"
KERNEL=="mem|kmem|port|nvram", GROUP="kmem", MODE="0640"
KERNEL=="ram0", SYMLINK+="ramdisk"
KERNEL=="ram1", SYMLINK+="ram"
# input
KERNEL=="mouse*|mice|event*", NAME="input/%k", MODE="0640"
KERNEL=="ts[0-9]*|uinput", NAME="input/%k", MODE="0600"
KERNEL=="js[0-9]*", NAME="input/%k", MODE="0644", SYMLINK+="%k"
# video4linux
KERNEL=="vbi0", SYMLINK+="vbi"
KERNEL=="radio0", SYMLINK+="radio"
KERNEL=="video0", SYMLINK+="video"
# graphics
KERNEL=="agpgart", MODE="0600"
KERNEL=="card[0-9]*", NAME="dri/%k", MODE="0666"
KERNEL=="fb0", SYMLINK+="fb"
# DVB video
SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c"
# Firewire
KERNEL=="dv1394*", SYMLINK+="dv1394/%n"
KERNEL=="video1394*", NAME="video1394/%n"
# firmware class requests
SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"
# libusb device nodes
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0644"
# printer
KERNEL=="parport[0-9]*", GROUP="lp"
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
KERNEL=="lp[0-9]*", GROUP="lp", SYMLINK+="par%n"
KERNEL=="irlpt[0-9]*", GROUP="lp"
# block, tapes, block-releated
SUBSYSTEM=="block", GROUP="disk"
SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n"
KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
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=="sch[0-9]*", GROUP="disk"
KERNEL=="sg[0-9]*", ATTRS{type}!="3|6", GROUP="disk", MODE="0640"
KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="disk"
KERNEL=="pg[0-9]*", GROUP="disk"
KERNEL=="pt[0-9]*|npt[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"
KERNEL=="rawctl", NAME="raw/%k", GROUP="disk"
SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"
KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k"
KERNEL=="pktcdvd", NAME="pktcdvd/control"
KERNEL=="qft0", SYMLINK+="ftape"
SUBSYSTEM=="bsg", NAME="bsg/%k"
SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk"
# network
KERNEL=="tun", NAME="net/%k", MODE="0666", OPTIONS+="ignore_remove"
# CPU
KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid"
KERNEL=="msr[0-9]*", NAME="cpu/%n/msr"
KERNEL=="microcode", NAME="cpu/microcode", MODE="0600"
# miscellaneous
KERNEL=="fuse", MODE="0666"
KERNEL=="rtc|rtc0", MODE="0644"
KERNEL=="rtc0", SYMLINK+="rtc"
KERNEL=="auer[0-9]*", NAME="usb/%k"
KERNEL=="hw_random", NAME="hwrng", SYMLINK+="%k"
KERNEL=="mmtimer", MODE="0644"
KERNEL=="rflash[0-9]*", MODE="0400"
KERNEL=="rrom[0-9]*", MODE="0400"
KERNEL=="sbpcd0", SYMLINK+="sbpcd"
KERNEL=="slram[0-9]*", SYMLINK+="xpram%n"
KERNEL=="sxctl", NAME="specialix_sxctl", SYMLINK+="%k"
KERNEL=="rioctl", NAME="specialix_rioctl", SYMLINK+="%k"
KERNEL=="iowarrior[0-9]*", NAME="usb/%k"
# do not delete static device nodes
ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"
|