I upgraded my Ubuntu 11.04 netbook today to 11.10. I admit, it wasn’t a flawless upgrade due to (wat I assume) was server overload over at Canonical. I ended up with a partial install much to my annoyance – which took about half an hour to research and fix.
It was much faster and generally smoother once I got past that. I assume part of this was the use of Unity2D on my netbook. However, the upgrade necessitates a reboot eventually, and that’s where the whole OS just froze on boot with the message “Waiting for Network Configuration”. Hitting escape showed me this: -
Unable to connect to the system bus: Failed to connect to socket /var/run/dbus/system_bus_socket: Connection refused (oneiric)
…although I think this has something to do with DBus – which is a daemon which handles inter-process communication and initiation. Since Ubuntu has been moving from the tradtional UNIX sysVinit (the mechanism which handles how the initial and child processes of the Linux kernel start) to Upstart, these things sound related.
Anyway, what all this means is that somewhere along the line, things are looking in the wrong place (I think). Instead of process stuff like process id files being stored in “/var/run” (WTF? – Why?), it’s stored in “/run”. This makes sense for the network interfaces defined under “/etc/network/interfaces/run” which is actually a symlink to “/run/network”, hence the error.
When you get the “Waiting for 60 seconds more for network configuration” Ubuntu message in the GUI, you should at some point be able to open a terminal window with CTRL-ALT-F1 and log in as normal via the bash shell. Finally, a damned command prompt :-/
Delete the DBus directory first under “/var/run/dbus” which hold the process id file and some other stuff. This frees the lockup on reboot. Then move everything under “/var/run” to “/run” with: -
mv /var/run/* /run
Verify the contents of “/var/run” is now in “/run”. Now create a symlink from “/run” to “/var/run” with: -
ln -s /run /var/run
To be safe, I also symlinked “/var/lock” to “/run/lock” with: -
ln -s /run/lock /var/lock
Once, I rebooted after this, I actually got to the GNOME login screen, which does look lovely under 11.10….ironically wasted beauty on my right now since I’m sure you’d be glad to see any GUI login prompt at this point in the upgrade circus. The next problem was that although I had already updated the system with: -
sudo apt-get update
sudo apt-get upgrade
…Ubuntu kept telling me to reboot because of a new kernel update via the little red icon to the upper right next to the new Me Menu (which I’ve not looked at yet). I eventually got rid of this by cleaning out the repositories with: -
sudo apt-get clean all
and rebooting yet again. The last problem was with power management, which tends to lock up my netbook in 11.10. However, once I turned this off (I don’t use it anyway), all was well. The boot freeze, which is obviously the main problem should never have got past Canonical’s Quality Assurance and testing procedures. Something somewhere along the boot process is still looking for something under sysVinit rather than Upstart on some systems, as apparently this has been a bug in LaunchPad before. That was from July, way before a major release that can freeze systems was sent on it’s way into the world. Yowza.
Anyway, I’m assuming this will be fixed at some point and really, when Ubuntu 11.10 does run, it runs much better than 11.04. It’s a nicer user experience than Fedora 15 on desktop (although that may change in time).
It’s just sad, because at a certain point in time, Ubuntu was pretty stable (although I think the differences from Red Hat are insane ;-)) and although Unity runs faster and (from an hour or two’s usage seems improved in most visible ways) it’s getting more and more unstable. Although, to be fair, I did have a rather rocky road from 11.04 to 11.10 because of the partial installation of the 11.10 repos. I’ll update my experiences with 11.10 again soon if anything interesting happens, but this should help anyone else with the same problem.