From: Kay Sievers Date: Sat, 3 Jan 2009 15:25:15 +0000 (+0100) Subject: rules: Ubuntu merge - use group "tape" X-Git-Tag: 174~1221 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8553cf06b93739c859534a85cc7ef1bdd8e33a5c;p=systemd rules: Ubuntu merge - use group "tape" --- diff --git a/NEWS b/NEWS index 76aec064..90a68d36 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,12 @@ nodes should be reliably created, but some rules and libudev will not work correctly because the old kernels do not provide the expected information or interfaces. +We are currently merging the Ubuntu rules in the udev default rules, and +get one step closer to provide a common Linux /dev setup regarding device +names, symlinks, and default device permissions. On udev startup, we now +expect the following groups to be resolvable to their ids by glibc's +getgrnam(): "disk cdrom floppy tape audio video lp tty kmem". + /dev/serial/by-{id,path}/ now contains links for ttyUSB devices, which do not depend on the kernel device name. As usual, unique devices - only a single one per product connected, or a real diff --git a/README b/README index a253ccfb..ecb520b2 100644 --- a/README +++ b/README @@ -19,6 +19,10 @@ Requirements: - The proc filesystem must be mounted on /proc/, the sysfs filesystem must be mounted at /sys/. No other locations are supported by udev. + - The system must have the following group names resolvable at udev startup: + disk cdrom floppy tape audio video lp tty kmem + Especially in LDAP setups, it is required, that getgrnam() is able to resolve + these group names while no network is available. Operation: Udev creates and removes device nodes in /dev/, based on events the kernel diff --git a/rules/rules.d/50-udev-default.rules b/rules/rules.d/50-udev-default.rules index d6533d6b..b2b2ee94 100644 --- a/rules/rules.d/50-udev-default.rules +++ b/rules/rules.d/50-udev-default.rules @@ -57,21 +57,28 @@ SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp" KERNEL=="lp[0-9]*", GROUP="lp" KERNEL=="irlpt[0-9]*", GROUP="lp" -# block, tapes, block-releated +# 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" + +# cdrom SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom" SUBSYSTEM=="block", KERNEL=="hd[0-9]*", 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" -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" + +# 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" + +# block, block-releated SUBSYSTEM=="block", GROUP="disk" KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions" KERNEL=="sch[0-9]*", GROUP="disk" -KERNEL=="sg[0-9]*", ATTRS{type}=="0|1|8", GROUP="disk" -KERNEL=="sg[0-9]*", ATTRS{type}=="4|5", GROUP="cdrom" -KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="disk" +SUBSYSTEMS=="scsi", ATTRS{type}=="0", 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/rawctl", GROUP="disk" SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"