-   Slackware (
-   -   Changing UDEV persistent naming schemes (

orbit 04-18-2008 01:19 AM

Changing UDEV persistent naming schemes
Hi all,

I've been reading for many hours on the subject of udev rules, and seem to be having a problem in finding the exact information I am after.
(Before anyone asks .. Yes, I have read the stickied thread at the top of this forum; but [Moderators Request]; it is in dire need of cleaning up, as it is heavily kludged with unrelated material).

Q. Am I correct is saying that udev by default labels it's /dev's by uuid?

If that is true, how exactly do i go about changing udev to label my /dev's by-label as the default scheme, instead of by uuid?

[The reason I am looking at changing the default naming convention is an experiment to overcome a kde system://media issue I am working on in another post on this forum].

I am attempting to make my drives mount in KDE as:
system:/media/<label> , rather than

If possible, It would be preferable to change the default naming convention completely via udev, without having to use static fstab routines.

What I have been looking at so far is editing:


persistent storage links: /dev/{disk,tape}/{by-label,by-id,by-uuid,by-path,by-name}
Is the correct method of changing the default naming rules a simple matter of commenting out the sections I dont want to use? (e.g. by-path),
Do I rewrite the order of the entries in the file? so that the by-label section is above the by by-uuid section?

What is the correct method of doing this?

Clarification on this will be greatly appreciated



Alien Bob 04-18-2008 01:28 AM

On my box running Slackware 12.0 and KDE, the removable media gets auto-mounted as /media/<LABEL> ... this is the default behaviour. How did your box start behaving differently?


aus9 04-18-2008 01:34 AM

and from a diff LQ post you could modify HAL

2) I have seen your other post. There is another way but a bit messy.

pretend your iso is /x/movie.iso

use root to make a permanent folder ....mkdir /movie

in a shell use root to

mount -o loop /x/movie.iso /movie

navigate to it and see if movie player will execute it from appropiate area

orbit 04-18-2008 02:01 AM

Hello Alien Bob and aus9, Thanks for your replies.


Alien Bob (Eric), when I mount devices in KDE, they show up differently in certain areas.

For instance, say I mount /dev/hda7 which is a partition called ISOs;

Navigating in konqueror from /, in the media directory it shows up as: /media/ISOs.
but in KDE Storage media, it shows up as labelled ISOs, but opening it shows it mounted as

What I am trying to overcome is this inconsistency within the KDE system:/media/
area as this is causing problems with my KDE servicemenu's.
(that's what my other post is all about).

I prefer to be able to use the system:/media section in KDE, as it has my drives nicely labelled and is much easier and more direct than navigating via < / > ... then .. </media> ... then <where i want to go>

I hope this clarifies what I am trying to do and the reasoning behind it?


aus9, thanks

I'll try to get this system:/media thing working as a priority first before I try the other method.
Thank you for the URL link, I'll study it and see if I can get any beneficial changes.


Thank you both again



orbit 04-21-2008 09:12 PM

Hi All,

In an attempt to get KDE's system:/media to reflect my partition labels rather than the /dev's they are mounted on, I have been adjusting /etc/udev/rules.d/50-udev.rules.

The result of my changes are that in /dev/disk directory, I now have only the 'by-label' subdirectory with all of my partitions correctly listed there.

However, when I use system:/media to mount the partition icon [ISOs], the drive mounts ok; but still shows the path as system:/media/hda7 :(

Am I missing something here??

How do I get KDE system:/media to use labels in the path instead of devs?

What I want to be able to achieve is that when I use KDE system:/media to mount the partition icon [ISOs], the drive mounts using the path system:/media/ISOs (not system:/media/hda7)

Can anyone assist please.

Following is my /etc/udev/rules.d/50-udev.rules file, can anyone suggest any alterations that may get the result I am after.


# /etc/udev/udev.rules: device naming rules for udev
# 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.
# This rules file is a mix of 10.2 Slackware udev.rules file and some
# rules from the udev examples.

# sysfs is populated after the event is sent
ACTION=="add", KERNEL=="[0-9]*:[0-9]*", SUBSYSTEM=="scsi", WAIT_FOR_SYSFS="ioerr_cnt"

# all block devices
SUBSYSTEM=="block", GROUP="disk"

# permissions for IDE floppy devices
SUBSYSTEMS=="ide", KERNEL=="*[!0-9]", ENV{DRIVER}=="ide-floppy*", NAME="%k", GROUP="floppy", MODE="0660"

# permissions for SCSI sg/tape devices
SUBSYSTEMS=="scsi", KERNEL=="s[gt][0-9]*", ATTRS{type}=="5", NAME="%k", GROUP="cdrom", MODE="0660"

# load modules to scsi disks, if they aren't in kernel
SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod"
SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", ATTRS{vendor}=="On[sS]tream", RUN+="/sbin/modprobe osst"
SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", RUN+="/sbin/modprobe st"
SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="[45]", RUN+="/sbin/modprobe sr_mod"
SUBSYSTEM=="scsi_device", ACTION=="add", RUN+="/sbin/modprobe sg"

# disk devices
KERNEL=="sd*", NAME="%k", GROUP="disk"
KERNEL=="ataraid*", NAME="%k", GROUP="disk"

# put all removable devices in group "plugdev"
KERNEL=="hd*[!0-9]", ATTR{removable}=="1", GROUP="plugdev"
KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GROUP="plugdev"
KERNEL=="sd*[!0-9]", ATTR{removable}=="1", GROUP="plugdev"
KERNEL=="sd*[0-9]", ATTRS{removable}=="1", GROUP="plugdev"

# persistent storage links: /dev/{disk,tape}/{by-label,by-id,by-uuid,by-path,by-name}

ACTION!="add", GOTO="persistent_storage_end"

KERNEL=="nst[0-9]", SUBSYSTEMS=="scsi", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode"
KERNEL=="nst[0-9]", SUBSYSTEMS=="scsi", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode"
KERNEL=="nst[0-9]", SUBSYSTEMS=="scsi", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}-nst"

# type 8 devices are "Medium Changers"
KERNEL=="sg*", SUBSYSTEMS=="scsi", ATTRS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode"
KERNEL=="sg*", SUBSYSTEMS=="scsi", ATTRS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode"
KERNEL=="sg*", SUBSYSTEMS=="scsi", ATTRS{type}=="8", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}"

SUBSYSTEM!="block", GOTO="persistent_storage_end"

# skip rules for inappropriate block devices
KERNEL=="ram*|loop*|fd*|nbd*|gnbd*|dm-*|md*", GOTO="persistent_storage_end"

# never access removable ide devices, the drivers are causing event loops on open()
KERNEL=="hd*[!0-9]", ATTR{removable}=="1", DRIVERS=="ide-cs|ide-floppy", GOTO="persistent_storage_end"
KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GOTO="persistent_storage_end"

# for partitions import parent information
KERNEL=="*[0-9]", IMPORT{parent}="ID_*"

# by-id (hardware serial number)
#KERNEL=="hd*[!0-9]", IMPORT{program}="ata_id --export $tempnode"
#KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}"
#KERNEL=="hd*[0-9]", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}-part%n"

KERNEL=="sd*[!0-9]|sr*|st*", ATTRS{ieee1394_id}=="?*", ENV{ID_SERIAL}="$attr{ieee1394_id}", ENV{ID_BUS}="ieee1394"
KERNEL=="sd*[!0-9]|sr*|st*", ENV{ID_SERIAL}=="", IMPORT{program}="usb_id -x"
KERNEL=="sd*[!0-9]|sr*|st*", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode"
KERNEL=="sd*[!0-9]|sr*|st*", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode"
KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
KERNEL=="sd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-label/$env{ID_BUS}-$env{ID_SERIAL}-part%n"

# libata compat (links like hd*)
KERNEL=="sd*[!0-9]|sr*", ENV{ID_VENDOR}=="ATA", PROGRAM="ata_id $tempnode", ENV{ID_ATA_COMPAT}="$result"
KERNEL=="sd*[!0-9]|sr*", ENV{ID_ATA_COMPAT}=="?*", SYMLINK+="disk/by-label/ata-$env{ID_ATA_COMPAT}"
KERNEL=="sd*[0-9]", ENV{ID_ATA_COMPAT}=="?*", SYMLINK+="disk/by-label/ata-$env{ID_ATA_COMPAT}-part%n"

KERNEL=="mmcblk[0-9]", ATTR{name}=="?*", ATTR{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}"
KERNEL=="mmcblk[0-9]p[0-9]", ATTR{name}=="?*", ATTR{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}-part%n"

# by-path (shortest physical path)
#KERNEL=="*[!0-9]|sr*", IMPORT{program}="path_id %p", SYMLINK+="disk/by-path/$env{ID_PATH}"
#KERNEL=="st*", IMPORT{program}="path_id %p", SYMLINK+="tape/by-path/$env{ID_PATH}"
#KERNEL=="sr*|st*", GOTO="persistent_storage_end"
#KERNEL=="*[0-9]", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"

# by-label/by-uuid (filesystem properties)
KERNEL=="*[!0-9]", ATTR{removable}=="1", GOTO="persistent_storage_end"
IMPORT{program}="vol_id --export $tempnode"
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_SAFE}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_SAFE}"
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_LABEL_SAFE}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_SAFE}"

# BIOS Enhanced Disk Device
#KERNEL=="*[!0-9]", IMPORT{program}="edd_id --export $tempnode"
#KERNEL=="*[!0-9]", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}"
#KERNEL=="*[0-9]", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}-part%n"


# import optical drive properties and set CD partitions
KERNEL=="scd[a-z]|sr[0-9]*|hd[a-z]|pcd[0-9]*", IMPORT{program}="cdrom_id --export $tempnode"
ENV{ID_CDROM}=="?*", NAME="%k", GROUP="cdrom", MODE="0660", RUN+=" %k"

# ALSA devices
SUBSYSTEM=="sound", GROUP="audio"
SUBSYSTEM=="snd", GROUP="audio"
KERNEL=="controlC[0-9]*", NAME="snd/%k", MODE="0666"
KERNEL=="hw[CD0-9]*", NAME="snd/%k", MODE="0662"
KERNEL=="pcm[CD0-9]*c", NAME="snd/%k", MODE="0662"
KERNEL=="pcm[CD0-9]*p", NAME="snd/%k", MODE="0666"
KERNEL=="midiC[D0-9]*", NAME="snd/%k", MODE="0666"
KERNEL=="timer", NAME="snd/%k", MODE="0666"
KERNEL=="seq", NAME="snd/%k", MODE="0666"

# IEEE1394 raw devices (often used for video)
KERNEL=="raw1394", NAME="%k", GROUP="video"
KERNEL=="dv1394*", NAME="dv1394/%n", GROUP="video"
KERNEL=="video1394*", NAME="video1394/%n", GROUP="video"

# 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"

# floppy devices
KERNEL=="fd[0-9]*", NAME="floppy/%n", SYMLINK+="%k", GROUP="floppy", PROGRAM="/lib/udev/ %k %b %n"

# i2c devices
KERNEL=="i2c-[0-9]*", NAME="i2c/%n", SYMLINK+="%k"

# persistent input links: /dev/input/{by-id,by-path}

ACTION!="add", GOTO="persistent_input_end"
SUBSYSTEM!="input", GOTO="persistent_input_end"
KERNEL=="input[0-9]*", GOTO="persistent_input_end"

# usb devices
SUBSYSTEMS=="usb", IMPORT{program}="usb_id -x"
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="03", ATTRS{bInterfaceProtocol}=="01", ENV{ID_CLASS}="kbd"
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="03", ATTRS{bInterfaceProtocol}=="02", ENV{ID_CLASS}="mouse"

# other devices
DRIVERS=="pcspkr", ENV{ID_CLASS}="spkr"
DRIVERS=="atkbd", ENV{ID_CLASS}="kbd"
DRIVERS=="psmouse", ENV{ID_CLASS}="mouse"
ATTRS{name}=="*dvb*|*DVB*|* IR *", ENV{ID_CLASS}="ir"
ATTRS{modalias}=="input:*-*a[068],*|input:*-*a*,[68],*m*", ATTRS{modalias}!="input:*-*k*14A,*r*", ENV{ID_CLASS}="joystick"


# by-id
KERNEL=="mouse*|js*", ENV{ID_BUS}=="?*", ENV{ID_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_CLASS}"
KERNEL=="event*", ENV{ID_BUS}=="?*", ENV{ID_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-event-$env{ID_CLASS}"

# by-path
IMPORT{program}="path_id %p"
ENV{ID_PATH}=="?*", KERNEL=="mouse*|js*", SYMLINK+="input/by-path/$env{ID_PATH}-$env{ID_CLASS}"
ENV{ID_PATH}=="?*", KERNEL=="event*", SYMLINK+="input/by-path/$env{ID_PATH}-event-$env{ID_CLASS}"


# input devices
KERNEL=="mice", NAME="input/%k", MODE="0644", SYMLINK+="mouse"
KERNEL=="mouse*", NAME="input/%k", MODE="0644"
KERNEL=="event*", NAME="input/%k", MODE="0640"
KERNEL=="js*", NAME="input/%k", MODE="664"
KERNEL=="ts*", NAME="input/%k", MODE="0600"
KERNEL=="input[0-9]*", ACTION=="add", ENV{ABS}=="[1-9]*", RUN+="/sbin/modprobe joydev"

# 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"

# 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"

# 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", MODE="0662"
KERNEL=="adsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="audio", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="audio[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="dsp", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="dsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="mixer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="mixer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="sequencer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"
KERNEL=="sequencer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio", MODE="0662"

# 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"

# serial or dialout devices
KERNEL=="ttyS[0-9]*", NAME="tts/%n", SYMLINK+="%k", GROUP="uucp", MODE="0660"
KERNEL=="ttyUSB[0-9]*", NAME="tts/USB%n", SYMLINK+="%k", GROUP="uucp", MODE="0660"
KERNEL=="ippp0", NAME="%k", GROUP="uucp"
KERNEL=="isdn*", NAME="%k", GROUP="uucp"
KERNEL=="dcbri*", NAME="%k", GROUP="uucp"
KERNEL=="ircomm*", NAME="%k", GROUP="uucp"

# pty devices
KERNEL=="ptmx", NAME="%k", GROUP="tty", MODE="0666"
KERNEL=="pty[p-za-e][0-9a-f]*", NAME="pty/m%m", SYMLINK+="%k", GROUP="tty"
KERNEL=="tty[p-za-e][0-9a-f]*", NAME="pty/s%m", 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="0664"
KERNEL=="urandom", NAME="%k", MODE="0664"
KERNEL=="mem", NAME="%k", GROUP="kmem", MODE="0640"
KERNEL=="kmem", NAME="%k", GROUP="kmem", MODE="0640"
KERNEL=="port", NAME="%k", GROUP="kmem", MODE="0640"
KERNEL=="nvram", NAME="%k", GROUP="kmem", MODE="600"
KERNEL=="full", NAME="%k", MODE="0666"
KERNEL=="null", NAME="%k", MODE="0666"
KERNEL=="zero", NAME="%k", MODE="0666"

# 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"

# usb devices
KERNEL=="hiddev*", NAME="usb/%k"
KERNEL=="auer*", NAME="usb/%k"
KERNEL=="legousbtower*", NAME="usb/%k"
KERNEL=="dabusb*", NAME="usb/%k"

# fb devices
KERNEL=="fb[0-9]*", NAME="fb/%n", SYMLINK+="%k", GROUP="video"

# DRI devices
KERNEL=="card*", NAME="dri/card%n", GROUP="video"
KERNEL=="nvidia*", NAME="%k", GROUP="video"
KERNEL=="3dfx*", NAME="%k", GROUP="video"

# v4l devices
KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK+="video%n", GROUP="video"
KERNEL=="radio[0-9]*", NAME="v4l/radio%n", SYMLINK+="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
SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'X=%k; X=$${X#dvb}; A=$${X%%%%.*}; D=$${X#*.}; echo dvb/adapter$$A/$$D'", NAME="%c", GROUP="video"

# 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=="irlpt", NAME="%k", GROUP="lp", MODE="0664"
SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp", MODE="0664"
SUBSYSTEM=="printer", KERNEL=="lp*", NAME="%k", GROUP="lp", MODE="0664"
KERNEL=="parport*", NAME="%k", GROUP="lp", MODE="0664"

# tape devices
KERNEL=="ht*", NAME="%k"
KERNEL=="nht*", NAME="%k"
KERNEL=="pt*", NAME="%k"
KERNEL=="npt*", NAME="%k"
KERNEL=="st*", NAME="%k"
KERNEL=="nst*", NAME="%k"
KERNEL=="osst*", NAME="%k"
KERNEL=="nosst*", NAME="%k"

# 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="cdrom", MODE="0660"
KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/pktcdvd%n", GROUP="cdrom", MODE="0660"

# infiniband devices
KERNEL=="umad*", NAME="infiniband/%k"
KERNEL=="issm*", NAME="infiniband/%k"

# i82365 is broken, and puts udev in a terrible loop. To fix that, we
# will ignore the platform provided module, and stop the loop:
SUBSYSTEM=="platform", ENV{MODALIAS}=="i82365", GOTO="load_modules_end"

# PnP
SUBSYSTEM=="pnp", ENV{MODALIAS}!="?*", \
RUN+="/bin/sh -c 'while read id; do /lib/udev/ pnp:d$$id; done < /sys$devpath/id'"

# firewire
SUBSYSTEM=="ieee1394", ENV{MODALIAS}!="?*", IMPORT{program}="modalias_ieee1394"

# libusb device access
DEVPATH=="/module/usbcore", ACTION=="add", \
RUN+="/bin/sh -c 'sleep 1; /bin/mount none -t usbfs /proc/bus/usb -o devmode=0666,devgid=10'"
SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'X=%k X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c"

# firmware loader
SUBSYSTEM=="firmware", ACTION=="add", RUN+="/lib/udev/"

# Platform
SUBSYSTEM=="platform", ACTION=="add", ENV{MODALIAS}=="?*", RUN+="/lib/udev/ $env{MODALIAS}", GOTO="load_modules_end"

# load module
ACTION=="add", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe $env{MODALIAS}"


# network devices
KERNEL=="tun", NAME="net/%k"

SUBSYSTEM=="net", ACTION=="add", RUN+=" $env{INTERFACE} start"
SUBSYSTEM=="net", ACTION=="remove", RUN+=" $env{INTERFACE} stop"

# catch the event in udevmonitor
Thanks in advance for any help.



T3slider 04-21-2008 09:22 PM

I don't have any advice -- I'd just like to confirm the presence of the strange bug (mounts as /dev/sdb1, for example, through system:/ or when mounting/opening the drive in Konqueror through KDE's HAL popup). I have a servicemenu of my own that acts similarly, but haven't had time to look into a fix.

All times are GMT -5. The time now is 10:58 PM.