Comment 53 for bug 249340

Revision history for this message
Otto Kekäläinen (otto) wrote :

Hello,

(how to replicate:) I've seen this issue with two of our company's (human) clients upgrading from 7.10 -> 8.04: The upgrade fails (freezes) and when the client reboots the machine it is no longer usable. Running dpkg --configure -a freezes while trying to generate locales. Killing the locale-gen-command with kill -1 or -9 switches does not work. Dpkg is also cramped since it cannot install dbus, and pretty much everything depends on it to install (and configure first).

Solution:
1. reboot the machine using the older recovery mode (the newest kernel isn't fully installed and does not work properly)
2. run "mkdir /var/run/dbus" since it is missing and would otherwise stop package dbus from upgrading.
3. run "dpkg --reconfigure -a": It will finish installation of dbus and then locale-gen will work.
4. Reboot. Everything works.

Long-term solutions to avoid similar issues in future:
- Watch the dpkg-process: if it hangs for a long while, start automatic recovery processes. It is not good behaviour that a single bad behaving package configuration halts the entire system upgrade.
- Use info from "dpkg -C" to check what package is stopping dependency-ways installation of all other packages - then report to user the name of that package or show a pstree-kind of report of showstopper dependencies.
- Fix dbus package so that is will generate directory /var/run/dbus itselft if it is missing.