From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kay Sievers Date: Tue, 04 Jan 2005 20:18:07 +0000 Subject: Re: %e switch doesn't work for udev Message-Id: <1104869887.5258.42.camel@localhost.localdomain> List-Id: References: <28890729.1104822507859.JavaMail.www@wwinf0603> In-Reply-To: <28890729.1104822507859.JavaMail.www@wwinf0603> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: linux-hotplug@vger.kernel.org On Tue, 2005-01-04 at 20:49 +0100, Philippe wrote: > Le mardi 04 janvier 2005 à 16:44 +0100, Kay Sievers a écrit : > > On Tue, 2005-01-04 at 08:08 +0100, Philippe ROUQUIER wrote: > > > Hi, > > > (I've not suscribed to the list so if you've got an answer please reply > > > directly to me). > > > I've read in the udev FAQ that this is the right place for talking and > > > asking about udev problems, if not please tell me the right place to > > > send my question. > > > > You are at the right place. > > > > > here is the thing, in my /etc/udev/rules.d, I've set up something like > > > BUS="ide", KERNEL="hd[b-z]", SYSFS{removable}="1", NAME="%k", > > > SYMLINK="cdroms/cdrom%e" as it is advised in some docs. Now the problem > > > is it doesn't work: for example hdb (a cdrom) creates > > > a /dev/cdroms/cdrom symlink pointing to hdb and hdc (another cdrom > > > reader) also creates the same symlink later which is pointing to hdc > > > this time. The only way I've found to distinguish between the two cdroms > > > is with the %b switch but I really want to use the %e. I use udev > > > version 0.50 and I've got the newest hotplug package. > > > any idea what is going wrong? > > > > What does: > > udevinfo -q all -p /block/hdb > > udevinfo -q all -p /block/hdc > > > > print? > I tried what you asked. and I always got the same message 'device not > found in the database' I tried to modify the above lines and nothing > came out of it always the same problem. That's what I expected. > by the way after -p what are we supposed to give the sysfs path > ( /sys/block/hdc/dev) or just what you wrote which would correspond to a > device in the database located in /dev/udev.db/ on my computer, that > wasn't clear for what I got from my search on internet). "man udevinfo" should print it. The -p is the kernels sysfs path to the device udev created the node for. udevinfo looks in its database for the name of the node. How does ls -l /dev/udev.db look like? Is it a file or a directory? We've changed from a single file to a directory recently and if your initscript doesn't remove the old database before it runs udevstart and you don't use tmpfs for /dev the old file may prevent the creation of the directory. Just remove /dev/udev.db completely and run /sbin/udevstart to create a new one then udevinfo should print something. Kay ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel