X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=rules%2Frules.d%2F50-udev-default.rules;h=da1535f92beabbe7edead290fb95686c6d5750b4;hp=240cb3b3a6a940b087274e31f655ff3b4f3a3753;hb=3c4b1738a9d591d7ddce361ea184b76b253c4e87;hpb=3b8103d45f99218f44b4ea87ab4284f6a253409b diff --git a/rules/rules.d/50-udev-default.rules b/rules/rules.d/50-udev-default.rules index 240cb3b3a..da1535f92 100644 --- a/rules/rules.d/50-udev-default.rules +++ b/rules/rules.d/50-udev-default.rules @@ -1,31 +1,33 @@ # do not edit this file, it will be overwritten on update -# initramfs:default -SUBSYSTEM=="block", SYMLINK+="block/%M:%m" -SUBSYSTEM!="block", SYMLINK+="char/%M:%m" +SUBSYSTEM=="block", SYMLINK{unique}+="block/%M:%m" +SUBSYSTEM!="block", SYMLINK{unique}+="char/%M:%m" KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660" KERNEL=="ptmx", GROUP="tty", MODE="0666" KERNEL=="tty", GROUP="tty", MODE="0666" KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620" -KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty" KERNEL=="console", MODE="0600" +KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty" # serial -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" KERNEL=="ppp", MODE="0600" -KERNEL=="mwave", NAME="modems/mwave", GROUP="dialout" +KERNEL=="mwave", GROUP="dialout" KERNEL=="hvc*|hvsi*", GROUP="dialout" +# virtio serial / console ports +KERNEL=="vport*", SYMLINK+="virtio-ports/$attr{name}" + # mem KERNEL=="null|zero|full|random|urandom", MODE="0666" KERNEL=="mem|kmem|port|nvram", GROUP="kmem", MODE="0640" # input -KERNEL=="mouse*|mice|event*", NAME="input/%k", MODE="0640" -KERNEL=="ts[0-9]*|uinput", NAME="input/%k", MODE="0640" -KERNEL=="js[0-9]*", NAME="input/%k", MODE="0644" +KERNEL=="mouse*|mice|event*", MODE="0640" +KERNEL=="ts[0-9]*|uinput", MODE="0640" +KERNEL=="js[0-9]*", MODE="0644" # video4linux SUBSYSTEM=="video4linux", GROUP="video" @@ -35,87 +37,82 @@ KERNEL=="winradio*", GROUP="video" # graphics KERNEL=="agpgart", MODE="0600", GROUP="video" -KERNEL=="card[0-9]*", NAME="dri/%k" KERNEL=="pmu", GROUP="video" KERNEL=="nvidia*|nvidiactl*", GROUP="video" SUBSYSTEM=="graphics", GROUP="video" SUBSYSTEM=="drm", GROUP="video" +# sound +SUBSYSTEM=="sound", GROUP="audio" +KERNEL=="mixer0", SYMLINK+="mixer" + # DVB (video) -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", ENV{DVB_ADAPTER_NUM}=="", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video" +SUBSYSTEM=="dvb", GROUP="video" -# Firewire -KERNEL=="dv1394[0-9]*", NAME="dv1394/%n", GROUP="video" -KERNEL=="video1394[0-9]*", NAME="video1394/%n", GROUP="video" +# FireWire (firewire-core driver: IIDC devices, AV/C devices) +SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", GROUP="video" +SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video" + +# FireWire (deprecated dv1394 and video1394 drivers) +KERNEL=="dv1394-[0-9]*", NAME="dv1394/%n", GROUP="video" +KERNEL=="video1394-[0-9]*", NAME="video1394/%n", GROUP="video" # libusb device nodes -SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0664" +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664" # printer KERNEL=="parport[0-9]*", GROUP="lp" SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp" SUBSYSTEM=="ppdev", GROUP="lp" -SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp" +SUBSYSTEM=="usb", KERNEL=="lp*", SYMLINK+="usb%k", GROUP="lp" KERNEL=="lp[0-9]*", GROUP="lp" KERNEL=="irlpt[0-9]*", GROUP="lp" +# hplip and cups 1.4+ use raw USB devices, so permissions should be similar to +# the ones from the old usblp kernel module +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="", IMPORT{program}="usb_id --export %p" +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}==":0701*:", GROUP="lp", MODE="0664" # block SUBSYSTEM=="block", GROUP="disk" # floppy -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" +SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy" # cdrom SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom" -SUBSYSTEM=="block", KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="cdrom", GROUP="cdrom" -SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom" -KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k", GROUP="cdrom" -KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrom" +SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom" +KERNEL=="pktcdvd[0-9]*", GROUP="cdrom" +KERNEL=="pktcdvd", GROUP="cdrom" # tape KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="tape" KERNEL=="pt[0-9]*|npt[0-9]*|pht[0-9]*", GROUP="tape" -SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape" +SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape" -# block-releated +# block-related KERNEL=="sch[0-9]*", GROUP="disk" -SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk" +SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk" KERNEL=="pg[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/rawctl", GROUP="disk" -SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk" -SUBSYSTEM=="bsg", NAME="bsg/%k" -SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk", MODE="0220" +KERNEL=="rawctl", GROUP="disk" +SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk" +SUBSYSTEM=="aoe", GROUP="disk", MODE="0220" SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440" # network -KERNEL=="tun", NAME="net/%k", MODE="0666" +KERNEL=="tun", MODE="0666" +KERNEL=="rfkill", MODE="0644" # CPU -KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid" -KERNEL=="msr[0-9]*", NAME="cpu/%n/msr" -KERNEL=="microcode", NAME="cpu/microcode", MODE="0600" +KERNEL=="cpu[0-9]*", MODE="0444" # miscellaneous KERNEL=="fuse", MODE="0666" SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc" -KERNEL=="auer[0-9]*", NAME="usb/%k" -KERNEL=="hw_random", NAME="hwrng" KERNEL=="mmtimer", MODE="0644" KERNEL=="rflash[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" # do not delete static device nodes -ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove" ACTION=="remove", NAME=="", TEST=="/lib/udev/devices/%k", OPTIONS+="ignore_remove" +ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"