0

After Lubuntu 18.04 installation, the system didn't boot, so I started root shell in recovery mode. I've observed that all systemd commands (e.g. systemctl list-sockets) are very slow or time out. My attempts to debug this:

  • Looking at the output of strace -p 1 I've observed that systemd PID 1 is waiting in a ppoll(2) system call to receive data on the dbus socket, but that data never arrives.

  • Output of ps ax | grep dbus contains 919 ? Zs 0:0 [dbus-daemon] <defunct>, and the PID changes every few minutes.

  • systemctl list-jobs is very slow (or times out), it displays 1950 dbus.service start waiting.

  • journalctl -u dbus.service -b -f dispays a few instances of Started D-Bus System Message Bus; 90 seconds later: dbus.service: Main process exited, code=exited, status=1/FAILURE. It doesn't show any other messages (e.g. the error message by dbus-daemon).

I suspect that the root cause of systemctl ... timeouts is that dbus.service crashes shortly after it starts. How do I debug this further? Where can I see the logs (+ stdout + stderr) of dbus.service?

I'm new to systemd and dbus. I have some Linux debugging skills from the pre-systemd times.

2
  • You can use journalctl -xe to see the systemd logs. But also you can manually start the dbus service to see what happens. The exact command-line arguments are in the ExecStart option of the /lib/systemd/system/dbus.service file which is the actual service. For example mine is : /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only Jun 14, 2020 at 14:49
  • It doesn't start with this command, because it's expecting a socket from systemd, which the interactive Bash doesn't have.
    – pts
    Jun 14, 2020 at 15:01

1 Answer 1

2

I managed to debug this by removing --syslog-only from /lib/systemd/system/dbus.service, and then journalctl -u dbus -b -f displayed a relevant error message: Failed to start message bus: Error getting AppArmor context of bus: Permission denied. I solved it by disabling AppArmor for dbus.

After this, X11 (lightdm) goes into an infinite crash loop, and in text boot mode I'm logged out (without an error message) in 1 second after a correct password input at console login.

I suspect the Lubuntu 18.04 installer is not compatible with online package updates from Ubuntu 18.04. Since then I have installed Ubuntu 18.04 (instead of Lubuntu) to this computer, and that one works out of the box. I was also able to install and use the Lubuntu and MATE desktop environments under Ubuntu 18.04.

5
  • What has caused the AppArmor to prevent dbus from running ? Jun 14, 2020 at 15:06
  • @ParsaMousavi: All I know is in my answer. I suspect the Lubuntu 18.04 installer is not compatible with online package updates from Ubuntu 18.04.
    – pts
    Jun 14, 2020 at 15:08
  • 1
    No issues have yet been discovered in QA-testing of Lubuntu 18.04.5 (which was delayed a week just today), nor any with 18.04.4 ISOs (testing was completed prior to release, so won't have been with any packages you installed, but new packages are examined via CI looking for issues). If you believe it's a bug, please file it (help.ubuntu.com/community/ReportingBugs) and we'll examine issue.
    – guiverc
    Jun 17, 2020 at 4:04
  • Bug reported: bugs.launchpad.net/ubuntu/+source/dbus/+bug/1883865
    – pts
    Jun 17, 2020 at 9:42
  • 1
    Thank you for taking the time to report this bug and helping to make Ubuntu better (please run apport-collect as requested, and thanks for posting the link; I'd missed it)
    – guiverc
    Jun 17, 2020 at 11:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.