Had the same bug with my ubuntu 8.04.
Failed starting Hardware Abstraction Layer was resolved by renaming /etc/rc5.d/S50dbus to /etc/rc5.d/S12dbus .
As a result dbus, hal and gdm started by init in the following order:
/etc/rc5.d/S12dbus
/etc/rc5.d/S24hal
/etc/rc5.d/S30gdm
Had the same bug with my ubuntu 8.04.
Failed starting Hardware Abstraction Layer was resolved by renaming /etc/rc5.d/S50dbus to /etc/rc5.d/S12dbus .
As a result dbus, hal and gdm started by init in the following order:
/etc/rc5.d/S12dbus
/etc/rc5.d/S24hal
/etc/rc5.d/S30gdm