Yesterday I dist-upgraded an Ubuntu 9.04 Server to an Ubuntu 9.10 Server and ran into a serious problem.

No network interfaces after reboot into 9.10 anymore. 

 Ok, what do we have here…I’m using a bonding + vlan (with vlan_raw_device bondinterface) setup, and strangely upstart doesn’t want to start that up.

The job which should do that is /etc/init/networking.conf, and the nice Soren Hansen tried to help me to debug this problem. We  came up with some workarounds, but somehow they didn’t work. After discussing this issue with Upstart Upstream and Ubuntu Dev Scott James Remnant we were stucked.

Today, I found the time to dig a bit deeper into the Upstart  process, and shame oh shame, it looks like that Upstart starts this "networking.conf" job too early, eventually before the needed /etc/init/network-interface.conf job.

Now, after more debugging I found out that somehow the "/var/run/network" directory is missing, but it’s needed for /sbin/ifup .

Ok, we got the bugger, whysoever, now for the fix:

if you have a similar problem, try to add this to your /etc/init/networking.conf:

<after the "task" keyword">script     mkdir -p /var/run/network     exec ifup -aend script<delete the last exec ifup -a line in the script>

Please try it out…I pushed the fix to lp: #446031

I wonder if this is really the bugger, and there is a timing problem between /etc/init/networking.conf and /etc/init/network-interface.conf