# /etc/udev/udev.rules: device naming rules for udev # # Gentoo specific rules, based a bit on devfs rules, but much simpler. # # There are a number of modifiers that are allowed to be used in some of the # fields. See the udev man page for a full description of them. ########################################################### # # For devfs similar /dev layout (neater) # ########################################################### # all block devices SUBSYSTEM="block", GROUP="disk" # cdrom symlinks and other good cdrom naming BUS="ide", KERNEL="hd[a-z]", PROGRAM="/etc/udev/scripts/cdsymlinks.sh %k", SYMLINK="%c{1} %c{2} %c{3} %c{4} %c{5} %c{6}" BUS="scsi", KERNEL="sr[0-9]*", PROGRAM="/etc/udev/scripts/cdsymlinks.sh %k", SYMLINK="%c{1} %c{2} %c{3} %c{4} %c{5} %c{6}" BUS="scsi", KERNEL="scd[a-z]", PROGRAM="/etc/udev/scripts/cdsymlinks.sh %k", SYMLINK="%c{1} %c{2} %c{3} %c{4} %c{5} %c{6}" # devfs-names for ide-devices (uncomment only one) # /dev/ide/.../{disc,cd} and /dev/{cdroms,discs}/* type names BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%k", SYMLINK="%c{1} %c{2}", GROUP="%c{3}" # disk devices KERNEL="sd*", NAME="%k", GROUP="disk" KERNEL="dasd*", NAME="%k", GROUP="disk" KERNEL="ataraid*", NAME="%k", GROUP="disk" # compaq smart array KERNEL="cciss!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", NAME="%c{1}", SYMLINK="%k" KERNEL="ida!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", NAME="%c{1}", SYMLINK="%k" # mylex KERNEL="rd!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", NAME="%c{1}", SYMLINK="%k" # dri devices KERNEL="card*", NAME="dri/card%n", GROUP="video" KERNEL="nvidia*", NAME="%k", GROUP="video" KERNEL="3dfx*", NAME="%k", GROUP="video" # alsa devices SUBSYSTEM="sound", GROUP="audio" KERNEL="controlC[0-9]*", NAME="snd/%k" KERNEL="hw[CD0-9]*", NAME="snd/%k" KERNEL="pcm[CD0-9cp]*", NAME="snd/%k" KERNEL="midiC[D0-9]*", NAME="snd/%k" KERNEL="timer", NAME="snd/%k" KERNEL="seq", NAME="snd/%k" # capi devices KERNEL="capi", NAME="capi20", SYMLINK="isdn/capi20" KERNEL="capi*", NAME="capi/%n" # cpu devices KERNEL="cpu[0-9]*", NAME="cpu/%n/cpuid" KERNEL="msr[0-9]*", NAME="cpu/%n/msr" KERNEL="microcode", NAME="cpu/microcode" # dm devices (ignore them) KERNEL="dm-[0-9]*", NAME="" # create a symlink named after the device map name # note devmap_name comes with extras/multipath #KERNEL="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK="%c" KERNEL="device-mapper", NAME="mapper/control" # fb devices KERNEL="fb[0-9]*", NAME="fb/%n", SYMLINK="%k", GROUP="video" # floppy devices KERNEL="fd[0-9]*", NAME="floppy/%n", SYMLINK="%k", GROUP="floppy" # i2c devices KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="%k" # input devices KERNEL="mice", NAME="input/%k", MODE="0644" KERNEL="mouse*", NAME="input/%k", MODE="0644" KERNEL="event*", NAME="input/%k", MODE="0600" KERNEL="js*", NAME="input/%k", MODE="664" KERNEL="ts*", NAME="input/%k", MODE="0600" # loop devices KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="%k", GROUP="disk" # md block devices KERNEL="md[0-9]*", NAME="md/%n", SYMLINK="%k", GROUP="disk" # aoe char devices, SUBSYSTEM="aoe", KERNEL="discover", NAME="etherd/%k", GROUP="disk", MODE="0220" SUBSYSTEM="aoe", KERNEL="err", NAME="etherd/%k", GROUP="disk", MODE="0440" SUBSYSTEM="aoe", KERNEL="interfaces", NAME="etherd/%k", GROUP="disk", MODE="0220" # misc devices KERNEL="agpgart", NAME="misc/%k", SYMLINK="%k" KERNEL="psaux", NAME="misc/%k", SYMLINK="%k" KERNEL="rtc", NAME="misc/%k", SYMLINK="%k", MODE="0664" KERNEL="uinput", NAME="misc/%k", SYMLINK="%k" KERNEL="inotify", NAME="misc/%k", SYMLINK="%k", MODE="0666" # netlink devices KERNEL="route", NAME="netlink/%k" KERNEL="skip", NAME="netlink/%k" KERNEL="usersock", NAME="netlink/%k" KERNEL="fwmonitor", NAME="netlink/%k" KERNEL="tcpdiag", NAME="netlink/%k" KERNEL="nflog", NAME="netlink/%k" KERNEL="xfrm", NAME="netlink/%k" KERNEL="arpd", NAME="netlink/%k" KERNEL="route6", NAME="netlink/%k" KERNEL="ip6_fw", NAME="netlink/%k" KERNEL="dnrtmsg", NAME="netlink/%k" KERNEL="tap*", NAME="netlink/%k" # network devices KERNEL="tun", NAME="net/%k" # ramdisk devices KERNEL="ram[0-9]*", NAME="rd/%n", SYMLINK="%k" # raw devices KERNEL="raw[0-9]*", NAME="raw/%k", GROUP="disk" KERNEL="ram*", NAME="%k", GROUP="disk" # sound devices KERNEL="adsp", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="adsp[0-9]*", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="audio", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="audio[0-9]*", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="dsp", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="dsp[0-9]*", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="mixer", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="mixer[0-9]*", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="sequencer", NAME="sound/%k", SYMLINK="%k", GROUP="audio" KERNEL="sequencer[0-9]*", NAME="sound/%k", SYMLINK="%k", GROUP="audio" # tty devices KERNEL="console", NAME="%k", GROUP="tty", MODE="0600" KERNEL="tty", NAME="%k", GROUP="tty", MODE="0666" KERNEL="tty[0-9]*", NAME="vc/%n", SYMLINK="%k", GROUP="tty" KERNEL="ttyS[0-9]*", NAME="tts/%n", SYMLINK="%k", GROUP="tty" KERNEL="ttyUSB[0-9]*", NAME="tts/USB%n", GROUP="tty", MODE="0600" KERNEL="ippp0", NAME="%k", GROUP="tty" KERNEL="isdn*", NAME="%k", GROUP="tty" KERNEL="dcbri*", NAME="%k", GROUP="tty" KERNEL="ircomm*", NAME="%k", GROUP="tty" # pty devices KERNEL="ptmx", NAME="%k", GROUP="tty", MODE="0666" KERNEL="pty[p-za-e][0-9a-f]*", NAME="pty/m%n", SYMLINK="%k", GROUP="tty" KERNEL="tty[p-za-e][0-9a-f]*", NAME="pty/s%n", SYMLINK="%k", GROUP="tty" # vc devices KERNEL="vcs", NAME="vcc/0", SYMLINK="%k", GROUP="tty" KERNEL="vcs[0-9]*", NAME="vcc/%n", SYMLINK="%k", GROUP="tty" KERNEL="vcsa", NAME="vcc/a0", SYMLINK="%k", GROUP="tty" KERNEL="vcsa[0-9]*", NAME="vcc/a%n", SYMLINK="%k", GROUP="tty" # memory devices KERNEL="random", NAME="%k", MODE="0666" KERNEL="urandom", NAME="%k", MODE="0444" KERNEL="mem", NAME="%k", MODE="0640" KERNEL="kmem", NAME="%k", MODE="0640" KERNEL="port", NAME="%k", MODE="0640" KERNEL="full", NAME="%k", MODE="0666" KERNEL="null", NAME="%k", MODE="0666" KERNEL="zero", NAME="%k", MODE="0666" # usb devices KERNEL="hiddev*", NAME="usb/%k" KERNEL="auer*", NAME="usb/%k" KERNEL="legousbtower*", NAME="usb/%k", GROUP="usb" KERNEL="dabusb*", NAME="usb/%k" BUS="usb", KERNEL="lp[0-9]*", NAME="usb/%k", GROUP="lp" # v4l devices KERNEL="video[0-9]*", NAME="v4l/video%n", SYMLINK="video%n", GROUP="video" KERNEL="radio[0-9]*", NAME="v4l/radio%n", GROUP="video" KERNEL="vbi[0-9]*", NAME="v4l/vbi%n", SYMLINK="vbi%n", GROUP="video" KERNEL="vtx[0-9]*", NAME="v4l/vtx%n", GROUP="video" # dvb devices KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c", GROUP="video", MODE="0660" # Asterix Zaptel devices KERNEL="zapctl", NAME="zap/ctl" KERNEL="zaptimer", NAME="zap/timer" KERNEL="zapchannel", NAME="zap/channel" KERNEL="zappseudo", NAME="zap/pseudo" KERNEL="zap[0-9]*", NAME="zap/%n" # pilot/palm devices KERNEL="pilot", NAME="%k", GROUP="uucp" # jaz devices KERNEL="jaz*", NAME="%k", GROUP="disk" # zip devices KERNEL="pocketzip*", NAME="%k", GROUP="disk" KERNEL="zip*", NAME="%k", GROUP="disk" # ls120 devices KERNEL="ls120", NAME="%k", GROUP="disk" # lp devices KERNEL="lp*", NAME="%k", GROUP="lp" KERNEL="irlpt", NAME="%k", GROUP="lp" KERNEL="usblp", NAME="%k", GROUP="lp" KERNEL="lp*", NAME="%k", GROUP="lp" # tape devices KERNEL="ht*", NAME="%k", GROUP="tape" KERNEL="nht*", NAME="%k", GROUP="tape" KERNEL="pt*", NAME="%k", GROUP="tape" KERNEL="npt*", NAME="%k", GROUP="tape" KERNEL="st*", NAME="%k", GROUP="tape" KERNEL="nst*", NAME="%k", GROUP="tape" KERNEL="osst*", NAME="%k", GROUP="tape" KERNEL="nosst*", NAME="%k", GROUP="tape" # diskonkey devices KERNEL="diskonkey*", NAME="%k", GROUP="disk" # rem_ide devices KERNEL="microdrive*", NAME="%k", GROUP="disk" # kbd devices KERNEL="kbd", NAME="%k", MODE="0664" # Sony Vaio Jogdial sonypi device KERNEL="sonypi", NAME="%k", MODE="0666" # packet devices KERNEL="pktcdvd", NAME="pktcdvd/control", GROUP="cdrw", MODE="0660" KERNEL="pktcdvd[0-9]*", NAME="pktcdvd/pktcdvd%n", GROUP="cdrw", MODE="0660" # infiniband devices KERNEL="umad*", NAME="infiniband/%k" KERNEL="issm*", NAME="infiniband/%k"