shuyung wrote:
An IP address that does not persist across shutdown is certainly Media Temple's fault. And while I haven't examined the device, I find the claim of a bug in upstart somewhat dubious. I suspect if you simply examine /etc/init.d and /etc/rc2.d, you'll find missing (or bad) scripts.
I'm almost positive we're dealing with
bug #543506. The problem isn't that the IP address wasn't persistent across a reboot. Rather, the "networking" and "networking-interface" init scripts (along with a shitton of others) are stuck in wait state. Basically init failed spectacularly due to what seems to be a race condition between /dev/console and the rc-sysinit upstart script which normally starts all the traditional system V (i.e. non-upstartified) init scripts. All of the system's symptoms match up exactly.
Unfortunately this is something of a
mandelbug. It's not clear precisely what conditions trigger it, and affected systems may only see this happen every Nth boot. Further, since 12.04 was released (the newer LTS version of Ubuntu), this bug has pretty much languished without any complete resolution. There's a potential workaround which I've implemented, but it won't take effect until the server is rebooted. We're holding on that for now because Mookhow only has access to a tablet right now, and if things go tits up again on reboot, it would be nice if he had access to a full PC.
Basically, this would have inevitably happened the next time the server was rebooted, regardless of who did it or why. Upstart was quite frankly shoved out the door by the Ubuntu devs before it was really ready. I could rant about other dumb **** I've seen upstart do, but it suffices to say that I'm not terribly surprised to see it blow up entirely.
Mookhow wrote:
IMO, they shouldn't have taken all day to figure out there was no IP address, though.
Yeah, I will fault them for that. ifupdown is acting all kinds of weird because of the init problems, but running "ifconfig" or "ip link show" still would have made it obvious that the interfaces weren't configured at all (not even loopback).