From 8553cf06b93739c859534a85cc7ef1bdd8e33a5c Mon Sep 17 00:00:00 2001 From: Kay Sievers Date: Sat, 3 Jan 2009 16:25:15 +0100 Subject: [PATCH] rules: Ubuntu merge - use group "tape" --- NEWS | 6 ++++++ README | 4 ++++ rules/rules.d/50-udev-default.rules | 21 ++++++++++++++------- 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/NEWS b/NEWS index 76aec0647..90a68d365 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 a253ccfb4..ecb520b2f 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 d6533d6bc..b2b2ee949 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" -- 2.30.2