Comment 41 for bug 25931

Revision history for this message
Alex Muntada (alex.muntada) wrote : Re: Failed to initalize HAL. (fix for gutsy)

/var/lib/dpkg/info/dbus.postinst assumes that old priorities were always 20:

# fix rc symlink priorities for upgrades from older versions
if [ "$1" = configure ] && dpkg --compare-versions "$2" lt-nl 1.0.2-1ubuntu3; then
    echo "Fixing up startup script priorities..."
    for l in 2 3 4 5; do
        old=/etc/rc$l.d/S20dbus
        new=/etc/rc$l.d/S12dbus
        if [ -e $old ] && ! [ -e $new ]; then
            mv $old $new
        fi
    done
fi

However, in my case the rc2.d priority was 50 (don't ask me why), so I removed all the dbus symlinks:

localhost# update-rc.d -f dbus remove
 Removing any system startup links for /etc/init.d/dbus ...
   /etc/rc0.d/K20dbus
   /etc/rc1.d/K20dbus
   /etc/rc2.d/S50dbus
   /etc/rc3.d/S12dbus
   /etc/rc4.d/S12dbus
   /etc/rc5.d/S12dbus
   /etc/rc6.d/K20dbus

Then, I just remade them using the command from the last section of dbus.postinst:

localhost# update-rc.d dbus multiuser 12 20
 Adding system startup for /etc/init.d/dbus ...
   /etc/rc1.d/K20dbus -> ../init.d/dbus
   /etc/rc2.d/S12dbus -> ../init.d/dbus
   /etc/rc3.d/S12dbus -> ../init.d/dbus
   /etc/rc4.d/S12dbus -> ../init.d/dbus
   /etc/rc5.d/S12dbus -> ../init.d/dbus

Then rebooted and now all the troubles about hal, dhcdbd, etc. are gone.

So I guess that dbus.postinst should not assume the old priority value.

HTH