summaryrefslogtreecommitdiff
path: root/recipes/udev/udev-141/permissions.rules
blob: 940d1630471e72f06393e69c8a5d2b02b631936d (plain)
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
109
110
111
112
113
114
115
116
117
118
119
ACTION!="add", GOTO="permissions_end"

# workarounds needed to synchronize with sysfs
# only needed for kernels < v2.6.18-rc1
ENV{PHYSDEVPATH}!="?*", ENV{PHYSDEVBUS}=="?*",	WAIT_FOR_SYSFS="bus"
SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*",	WAIT_FOR_SYSFS="ioerr_cnt"
# only needed for kernels < 2.6.16
SUBSYSTEM=="net",				WAIT_FOR_SYSFS="address"
# only needed for kernels < 2.6.17
SUBSYSTEM=="net", ENV{DRIVER}=="?*",		WAIT_FOR_SYSFS="device/driver"

# devices needed to load the drivers providing them
KERNEL=="tun",					OPTIONS+="ignore_remove"
KERNEL=="ppp",					OPTIONS+="ignore_remove"
KERNEL=="loop[0-9]*",				OPTIONS+="ignore_remove"

# default permissions for block devices
SUBSYSTEM=="block",				GROUP="disk"
# the aacraid driver is broken and reports that disks removable (see #404927)
SUBSYSTEM=="block", ATTRS{removable}=="1", \
	DRIVERS!="aacraid",			GROUP="floppy"
# all block devices on these buses are "removable"
SUBSYSTEM=="block", SUBSYSTEMS=="usb|ieee1394|mmc|pcmcia", GROUP="floppy"

# IDE devices
KERNEL=="hd[a-z]|pcd[0-9]*", 			DRIVERS=="ide-cdrom|pcd", \
	IMPORT{program}="cdrom_id --export $tempnode"
ENV{ID_CDROM}=="?*",				GROUP="cdrom"
KERNEL=="ht[0-9]*", 				GROUP="tape"
KERNEL=="nht[0-9]*", 				GROUP="tape"

# SCSI devices
KERNEL=="sr[0-9]*", IMPORT{program}="cdrom_id --export $tempnode"
SUBSYSTEMS=="scsi", ATTRS{type}=="1",				GROUP="tape"
SUBSYSTEMS=="scsi", ATTRS{type}=="4",				GROUP="cdrom"
SUBSYSTEMS=="scsi", ATTRS{type}=="5",				GROUP="cdrom"
SUBSYSTEMS=="scsi", ATTRS{type}=="8",				GROUP="tape"

# USB devices
KERNEL=="legousbtower*",	MODE="0666"
KERNEL=="lp[0-9]*", SUBSYSTEMS=="usb",		GROUP="lp"

# usbfs-like devices
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
				MODE="0664"

# iRiver music players
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device",	GROUP="plugdev", \
	ATTRS{idVendor}=="4102", ATTRS{idProduct}=="10[01][135789]"

# serial devices
SUBSYSTEM=="tty",				GROUP="dialout"
SUBSYSTEM=="capi",				GROUP="dialout"
SUBSYSTEM=="slamr",				GROUP="dialout"
SUBSYSTEM=="zaptel",				GROUP="dialout"

# vc devices (all members of the tty subsystem)
KERNEL=="ptmx",			MODE="0666",	GROUP="root"
KERNEL=="console",		MODE="0600",	GROUP="root"
KERNEL=="tty",			MODE="0666",	GROUP="root"
KERNEL=="tty[0-9]*",				GROUP="root"
KERNEL=="pty*",			MODE="0666",	GROUP="tty"

# video devices
SUBSYSTEM=="video4linux",			GROUP="video"
SUBSYSTEM=="drm",				GROUP="video"
SUBSYSTEM=="dvb",				GROUP="video"
SUBSYSTEM=="em8300",				GROUP="video"
SUBSYSTEM=="graphics",				GROUP="video"
SUBSYSTEM=="nvidia",				GROUP="video"

# misc devices
KERNEL=="random",		MODE="0666"
KERNEL=="urandom",		MODE="0666"
KERNEL=="mem",			MODE="0640",	GROUP="kmem"
KERNEL=="kmem",			MODE="0640",	GROUP="kmem"
KERNEL=="port",			MODE="0640",	GROUP="kmem"
KERNEL=="full",			MODE="0666"
KERNEL=="null",			MODE="0666"
KERNEL=="zero",			MODE="0666"
KERNEL=="inotify",		MODE="0666"
KERNEL=="sgi_fetchop",		MODE="0666"
KERNEL=="sonypi",		MODE="0666"
KERNEL=="agpgart",				GROUP="video"
KERNEL=="rtc|rtc[0-9]*",			GROUP="audio"
KERNEL=="kqemu",		MODE="0666"
KERNEL=="tun",			MODE="0666",

KERNEL=="cdemu[0-9]*",				GROUP="cdrom"
KERNEL=="pktcdvd[0-9]*",			GROUP="cdrom"
KERNEL=="pktcdvd",		MODE="0644"

# printers and parallel devices
SUBSYSTEM=="printer",				GROUP="lp"
SUBSYSTEM=="ppdev",				GROUP="lp"
KERNEL=="irlpt*",				GROUP="lp"
KERNEL=="pt[0-9]*",				GROUP="tape"
KERNEL=="pht[0-9]*",				GROUP="tape"

# sound devices
SUBSYSTEM=="sound",				GROUP="audio"

# ieee1394 devices       
KERNEL=="raw1394",				GROUP="disk"
KERNEL=="dv1394*",				GROUP="video"
KERNEL=="video1394*",				GROUP="video"

# input devices
KERNEL=="event[0-9]*", ATTRS{name}=="*dvb*|*DVB*|* IR *" \
				MODE="0664",	GROUP="video"
KERNEL=="js[0-9]*",		MODE="0664"
KERNEL=="lirc[0-9]*",				GROUP="video"

# AOE character devices
SUBSYSTEM=="aoe",		MODE="0220",	GROUP="disk"
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"

LABEL="permissions_end"