Comment 9 for bug 46516

Revision history for this message
Joerg Delker (ubuntu-delker) wrote :

I suffered the same problem and was able to nail it down to udev! (see also bug 77325)

Indeed, the mountnfs script in if-up.d is never run, because interfaces are already up when rcS reaches S40networking.
The reason for this is, that udev get's notice of the hardware and calls itself (via /etc/udev/rules/85-ifupdown.rules) an "ifup --allow auto $env{INTERFACE}", which enables the interface.

This is obviously too early in the boot process (S10), to successfully initialize NFS(4). Since it is called in the background (start-stop-daemon), it may eventually be delayed so that it may succeed.

My fix and suggestion is to change the "auto-CLASS" (see man ifup) for the udev invocation.
When changing "--allow auto" to "--allow udev" only those interfaces marked with e.g. "allow-udev eth0" are brought up by udev.
This gives the admin control where interfaces are handled (udev or S40networking).