While #389996 is relevant here as well (as in, default /etc/network/run should be moved to /lib/init/rw/), the problem in this #306224 is different, and it is much more apparent now when insserv is running all the scripts.
The problem here is that /etc/init.d/ifupdown does not depend on anything but local_fs (for stop) or checkroot (via ifupdown-clean) for start. For reboot/shutdown, this means that ifupdown stop runs _after_ sendsigs, which, for example, kills dhcp clients running for dhcp-configured interfaces. This is not a trivial issue, just like with fstab and filesystem mounting - sometimes network should be bought up before mounts (to use dhcp and maybe other files from /usr and be able to use /var for state files), sometimes it's the reverse, when we mount /var or /usr over nfs - just an example, there may be other cases. At any rate, udev (stop) and sendsigs (start) should be run after ifupdown stop, not before. Having said all that, I think this bug should be retitled to be something like "ifupdown stop runs too late". Thanks! /mjt -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

