| 1 | ######################################################################## | 
|---|
| 2 | # | 
|---|
| 3 | # Description : 50-udev.rules | 
|---|
| 4 | # | 
|---|
| 5 | # Authors     : Based on Open Suse Udev Rules | 
|---|
| 6 | #               kay.sievers@suse.de | 
|---|
| 7 | # | 
|---|
| 8 | # Adapted to  : Jim Gifford | 
|---|
| 9 | # LFS         : Alexander E. Patrakov | 
|---|
| 10 | # | 
|---|
| 11 | # Version     : 00.01 | 
|---|
| 12 | # | 
|---|
| 13 | # Notes       : | 
|---|
| 14 | # | 
|---|
| 15 | ######################################################################## | 
|---|
| 16 |  | 
|---|
| 17 | # block devices | 
|---|
| 18 | SUBSYSTEM=="block",             GROUP="disk", MODE="0640" | 
|---|
| 19 |  | 
|---|
| 20 | # console | 
|---|
| 21 | KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]",     GROUP="tty", MODE="666", OPTIONS="last_rule" | 
|---|
| 22 | KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]",     GROUP="tty", MODE="666", OPTIONS="last_rule" | 
|---|
| 23 | KERNEL=="vcs*",                                         GROUP="tty", MODE="620", OPTIONS="last_rule" | 
|---|
| 24 | KERNEL=="tty",                                          GROUP="tty", MODE="666", OPTIONS="last_rule" | 
|---|
| 25 | KERNEL=="tty[0-9]*",                                    GROUP="tty", MODE="620", OPTIONS="last_rule" | 
|---|
| 26 | KERNEL=="console",                                      MODE="600", OPTIONS="last_rule" | 
|---|
| 27 | KERNEL=="ptmx",                                         GROUP="tty", MODE="666", OPTIONS="last_rule" | 
|---|
| 28 |  | 
|---|
| 29 | # serial devices | 
|---|
| 30 | KERNEL=="tty[A-Z]*",            GROUP="uucp" | 
|---|
| 31 | KERNEL=="pppox*",               GROUP="uucp" | 
|---|
| 32 | KERNEL=="ircomm*",              GROUP="uucp" | 
|---|
| 33 | KERNEL=="modems/mwave*",        GROUP="uucp" | 
|---|
| 34 | KERNEL=="hvc*",                 GROUP="uucp" | 
|---|
| 35 | KERNEL=="hvsi*",                GROUP="uucp" | 
|---|
| 36 | KERNEL=="iseries/vtty*",        GROUP="uucp" | 
|---|
| 37 | KERNEL=="ttyUSB*",              ATTRS{product}=="[Pp]alm*Handheld*", SYMLINK+="pilot" | 
|---|
| 38 |  | 
|---|
| 39 | # video/graphics | 
|---|
| 40 | SUBSYSTEM=="video4linux",       GROUP="video" | 
|---|
| 41 | SUBSYSTEM=="graphics"           GROUP="video" | 
|---|
| 42 | KERNEL=="vtx*",                 GROUP="video" | 
|---|
| 43 | KERNEL=="vbi*",                 GROUP="video" | 
|---|
| 44 | KERNEL=="winradio*",            GROUP="video" | 
|---|
| 45 | KERNEL=="vttuner*",             GROUP="video" | 
|---|
| 46 | KERNEL=="nvidia*",              GROUP="video" | 
|---|
| 47 | KERNEL=="video0",               SYMLINK+="video" | 
|---|
| 48 | KERNEL=="radio0",               SYMLINK+="radio" | 
|---|
| 49 | KERNEL=="vbi0",                 SYMLINK+="vbi" | 
|---|
| 50 | KERNEL=="pmu",                  GROUP="video" | 
|---|
| 51 |  | 
|---|
| 52 | # dvb | 
|---|
| 53 | SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video" | 
|---|
| 54 |  | 
|---|
| 55 | # input devices | 
|---|
| 56 | KERNEL=="mice",                 NAME="input/%k", MODE="0640" | 
|---|
| 57 | KERNEL=="mouse*",               NAME="input/%k", MODE="0640" | 
|---|
| 58 | KERNEL=="event*",               NAME="input/%k", MODE="0640" | 
|---|
| 59 | KERNEL=="js*",                  NAME="input/%k", MODE="0644" | 
|---|
| 60 | KERNEL=="ts*",                  NAME="input/%k", MODE="0600" | 
|---|
| 61 | KERNEL=="uinput",               NAME="input/%k", MODE="0600" | 
|---|
| 62 | KERNEL=="lirc0",                SYMLINK+="lirc" | 
|---|
| 63 |  | 
|---|
| 64 | # printer | 
|---|
| 65 | SUBSYSTEM=="usb",               KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp" | 
|---|
| 66 | SUBSYSTEM=="printer",           KERNEL=="lp*", NAME="%k", GROUP="lp" | 
|---|
| 67 | KERNEL=="irlpt*",               GROUP="lp" | 
|---|
| 68 |  | 
|---|
| 69 | # cpu devices | 
|---|
| 70 | KERNEL=="cpu[0-9]*",            NAME="cpu/%n/cpuid" | 
|---|
| 71 | KERNEL=="msr[0-9]*",            NAME="cpu/%n/msr" | 
|---|
| 72 | KERNEL=="microcode",            NAME="cpu/microcode", MODE="0600" | 
|---|
| 73 |  | 
|---|
| 74 | # IEEE1394 devices | 
|---|
| 75 | KERNEL=="raw1394*",             GROUP="video" | 
|---|
| 76 | KERNEL=="dv1394*",              SYMLINK+="dv1394/%n", GROUP="video" | 
|---|
| 77 | KERNEL=="video1394*",           SYMLINK+="video1394/%n", GROUP="video" | 
|---|
| 78 |  | 
|---|
| 79 | # 183 = /dev/hwrng        Generic random number generator | 
|---|
| 80 | KERNEL=="hw_random",            NAME="hwrng", SYMLINK+="%k" | 
|---|
| 81 |  | 
|---|
| 82 | # 219 /dev/modems/mwave MWave modem firmware upload | 
|---|
| 83 | KERNEL=="mwave",                NAME="modems/%k" | 
|---|
| 84 |  | 
|---|
| 85 | # 169 /dev/specialix_rioctl Specialix RIO serial control | 
|---|
| 86 | KERNEL=="rioctl",               NAME="specialix_rioctl", SYMLINK+="%k" | 
|---|
| 87 |  | 
|---|
| 88 | # 167 /dev/specialix_sxctl Specialix serial control | 
|---|
| 89 | KERNEL=="sxctl",                NAME="specialix_sxctl", SYMLINK+="%k" | 
|---|
| 90 |  | 
|---|
| 91 | # network | 
|---|
| 92 | KERNEL=="tun",                  NAME="net/%k", MODE="0600" | 
|---|
| 93 |  | 
|---|
| 94 | # misc devices | 
|---|
| 95 | KERNEL=="mem",                  GROUP="kmem", MODE="640" | 
|---|
| 96 | KERNEL=="kmem",                 GROUP="kmem", MODE="640" | 
|---|
| 97 | KERNEL=="port",                 GROUP="kmem", MODE="640" | 
|---|
| 98 | KERNEL=="nvram",                GROUP="kmem", MODE="600" | 
|---|
| 99 | KERNEL=="null",                 MODE="666" | 
|---|
| 100 | KERNEL=="zero",                 MODE="666" | 
|---|
| 101 | KERNEL=="full",                 MODE="622" | 
|---|
| 102 | KERNEL=="random",               MODE="666" | 
|---|
| 103 | KERNEL=="urandom",              MODE="644" | 
|---|
| 104 | KERNEL=="rtc",                  GROUP="audio" | 
|---|
| 105 | KERNEL=="sonypi",               MODE="666" | 
|---|
| 106 | KERNEL=="agpgart",              MODE="600", GROUP="video" | 
|---|
| 107 | KERNEL=="djs*",                 MODE="644" | 
|---|
| 108 | KERNEL=="sgi_*",                MODE="666" | 
|---|
| 109 | KERNEL=="rrom*",                MODE="400" | 
|---|
| 110 | KERNEL=="rflash*",              MODE="400" | 
|---|
| 111 | KERNEL=="usbscanner*",          MODE="644" | 
|---|
| 112 | KERNEL=="3270/ttycons*",        MODE="600" | 
|---|
| 113 | KERNEL=="3270/tub*",            MODE="666" | 
|---|
| 114 | KERNEL=="3270/tubcons*",        MODE="600" | 
|---|
| 115 | KERNEL=="ica",                  MODE="666" | 
|---|
| 116 | KERNEL=="z90crypt",             MODE="666" | 
|---|
| 117 | KERNEL=="mmtimer",              MODE="444" | 
|---|
| 118 | KERNEL=="auer[0-9]*"            NAME="usb/%k" | 
|---|
| 119 |  | 
|---|
| 120 | # packet writing interface | 
|---|
| 121 | KERNEL=="pktcdvd",              NAME="pktcdvd/control" | 
|---|
| 122 | KERNEL=="pktcdvd[0-9]*",        NAME="pktcdvd/%k" | 
|---|
| 123 |  | 
|---|
| 124 | # fix floppy devices | 
|---|
| 125 | KERNEL=="fd[0-9]*",             ACTION=="add", GROUP="floppy", MODE="660" | 
|---|
| 126 | KERNEL=="fd[0-9]*",             ACTION=="remove", RUN+="/bin/rm -f $root/%k*" | 
|---|
| 127 |  | 
|---|
| 128 | # sd:           0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC | 
|---|
| 129 | # sr:           4 TYPE_WORM, 5 TYPE_ROM | 
|---|
| 130 | # st/osst:      1 TYPE_TAPE | 
|---|
| 131 | ACTION=="add",                  SUBSYSTEM=="scsi" , ATTR{type}=="0|7|14", ATTR{timeout}="60" | 
|---|
| 132 | ACTION=="add",                  SUBSYSTEM=="scsi" , ATTR{type}=="1", ATTR{timeout}="900" | 
|---|
| 133 |  | 
|---|
| 134 | # device mapper | 
|---|
| 135 | KERNEL=="device-mapper",        SYMLINK+="mapper/control" | 
|---|
| 136 |  | 
|---|
| 137 | # misc storage devices (non-block) | 
|---|
| 138 | KERNEL=="sg*",                  GROUP="disk", MODE="640" | 
|---|
| 139 | KERNEL=="sr*",                  GROUP="cdrom", MODE="660" | 
|---|
| 140 | KERNEL=="st*",                  GROUP="tape" | 
|---|
| 141 | KERNEL=="nst*",                 GROUP="tape" | 
|---|
| 142 | KERNEL=="initrd",               GROUP="disk" | 
|---|
| 143 | KERNEL=="qft*",                 GROUP="tape" | 
|---|
| 144 | KERNEL=="nqft*",                GROUP="tape" | 
|---|
| 145 | KERNEL=="zqft*",                GROUP="tape" | 
|---|
| 146 | KERNEL=="nzqft*",               GROUP="tape" | 
|---|
| 147 | KERNEL=="rawqft*",              GROUP="tape" | 
|---|
| 148 | KERNEL=="nrawqft*",             GROUP="tape" | 
|---|
| 149 | KERNEL=="pf*",                  GROUP="disk" | 
|---|
| 150 | KERNEL=="sch*",                 GROUP="disk" | 
|---|
| 151 | KERNEL=="pt*",                  GROUP="tape" | 
|---|
| 152 | KERNEL=="npt*",                 GROUP="tape" | 
|---|
| 153 | KERNEL=="pg*",                  GROUP="disk" | 
|---|
| 154 | KERNEL=="evms/block_device*",   GROUP="disk" | 
|---|
| 155 | KERNEL=="rawctl*",              GROUP="disk" | 
|---|
| 156 | KERNEL=="osst*",                GROUP="tape" | 
|---|
| 157 | KERNEL=="nosst*",               GROUP="tape" | 
|---|
| 158 | KERNEL=="iseries/vt*",          GROUP="disk" | 
|---|
| 159 | KERNEL=="iseries/nvt*",         GROUP="disk" | 
|---|
| 160 | KERNEL=="iseries/ibmsis*",      GROUP="disk" | 
|---|
| 161 |  | 
|---|
| 162 | # libusb device access | 
|---|
| 163 | SUBSYSTEM=="usb_device",        PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" | 
|---|