From: Peter Gordon <peter@pg-consultants.com>
To: linux-hotplug@vger.kernel.org
Subject: Re: udev not running new rules
Date: Sun, 12 Aug 2007 19:39:00 +0000 [thread overview]
Message-ID: <1186947540.4142.21.camel@tigger> (raw)
In-Reply-To: <1186927115.3225.10.camel@tigger>
On Sun, 2007-08-12 at 21:28 +0200, Kay Sievers wrote:
> On Sun, 2007-08-12 at 22:03 +0300, Peter Gordon wrote:
> > On Sun, 2007-08-12 at 16:19 +0200, Kay Sievers wrote:
> > > On 8/12/07, Peter Gordon <peter@pg-consultants.com> wrote:
> > > >
> > > > I am using Debian Etch.
> > > >
> > > > I have the directory in /etc/udev/rules.d
> > > >
> > > > lrwxrwxrwx 1 root root 20 2007-06-19 16:52 020_permissions.rules -> ../permissions.rules
> > > > lrwxrwxrwx 1 root root 13 2007-06-19 16:52 udev.rules -> ../udev.rules
> > > > -rwxr-xr-x 1 root root 138 2007-07-29 14:28 z19_persistent-anet.rules
> > > > lrwxrwxrwx 1 root root 25 2007-06-19 16:52 z20_persistent-input.rules -> ../persistent-input.rules
> > > > lrwxrwxrwx 1 root root 19 2007-06-19 16:52 z20_persistent.rules -> ../persistent.rules
> > > > -rw-r--r-- 1 root root 1070 2007-06-19 17:09 z25_persistent-cd.rules
> > > > lrwxrwxrwx 1 root root 23 2007-06-26 00:57 z25_persistent-net.rules -> ../persistent-net.rules
> > > > lrwxrwxrwx 1 root root 12 2007-06-19 16:52 z50_run.rules -> ../run.rules
> > > > lrwxrwxrwx 1 root root 16 2007-06-19 16:52 z55_hotplug.rules -> ../hotplug.rules
> > > > lrwxrwxrwx 1 root root 29 2007-06-19 16:52 z75_cd-aliases-generator.rules -> ../cd-aliases-generator.rules
> > > >
> > > > Initially, the file ../persistent-net.rules does not exist.
> > > >
> > > > The rule z19_persistent-anet.rules is:
> > > >
> > > > PROGRAM="/var/www/lib/produce_persistent_rules.pl"
> > > >
> > > > The object of the program is to rename one of the NICs, and simply produces a rule
> > > > SUBSYSTEMS="pci", KERNELS="0000:09:01.0", NAME="ctl"
> > > >
> > > > It runs a Perl program that creates the file ../persistent-net.rules.
> > > >
> > > > After a reboot, the file is created, but udev claims that it doesn't exist.
> > > >
> > > > After a second reboot, udev manages to read the file successfully.
> > > >
> > > > Killing udev and restarting doesn't help.
> > > >
> > > > It seems that udev firstly checks which files exist. How can I get the new rule set to be run as soon as it is created?
> > >
> > > Rules are just matches/actions for events. Adding or removing rules
> > > does nothing to any already existent device. Only the next event would
> > > be processed with the new rules. Does that explain your problem?
> > >
> >
> > I have deleted the soft link as suggested by Marco d'Itri and it didn't
> > help.
> >
> > I understand about the already existing device.
> >
> > If the event for a NIC occurs really early in the udev sequence, it
> > would seem that the z19_persistent-anet.rules is being run after the NIC
> > was created.
> >
> > I moved z19_persistent-anet.rules to 000z19_persistent-anet.rules to
> > force it to be the first rule.
> >
> > It still creates the file, but doesn't manage to use the file until the
> > following reboot.
> >
> > So I still don't have a handle on the problem. What would be the best
> > way to get debugging output?
>
> Do you expect to create a rules file and get that file applied
> immediately to the running event? That doesn't work, rules are parsed
> in-memory and only read by the daemon not by the event process.
>
> You need to apply the result of the rule creation in the same event,
> with the same rule that created the rules file for future events. Just
> look at the standard solution for persistent network interfaces that
> comes with udev, which probably just solves your problem anyway, or what
> do you miss from it?
>
My problem is this. I need to create the rules file at boot up since the
devices available may change from boot to boot, and the PCI addresses
are not guaranteed to be the same.
So I need to create the rules file and then get those rules run.
I had a look at the persistent network interfaces but I can't see how
that helps, since the rules are already extant.
Peter
> Kay
>
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
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
next prev parent reply other threads:[~2007-08-12 19:39 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-12 13:58 udev not running new rules Peter Gordon
2007-08-12 14:10 ` Marco d'Itri
2007-08-12 14:19 ` Kay Sievers
2007-08-12 19:03 ` Peter Gordon
2007-08-12 19:28 ` Kay Sievers
2007-08-12 19:39 ` Peter Gordon [this message]
2007-08-13 7:06 ` Gerald V. Livingston II
2007-08-13 11:09 ` Bryan Kadzban
2007-08-13 11:38 ` Kay Sievers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1186947540.4142.21.camel@tigger \
--to=peter@pg-consultants.com \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).