Bug#940971: libnss-systemd: /etc/init.d/dbus blocks for 90 seconds when booting with sysvinit

Ansgar ansgar at 43-1.org
Mon Sep 23 14:21:29 BST 2019


On Mon, 2019-09-23 at 13:38 +0100, Simon McVittie wrote:
> On Mon, 23 Sep 2019 at 13:30:49 +0100, Simon McVittie wrote:
> > If libnss-systemd is in the critical path for the equivalent of
> > `getent hosts messagebus`
> 
> I meant `getent passwd messagebus` of course.

systemd sets an environment variable to make dbus not use libnss-
systemd:

+---
|         /* If this is D-Bus, tell the nss-systemd module, since it relies on being able to use D-Bus look up dynamic
|          * users via PID 1, possibly dead-locking the dbus daemon. This way it will not use D-Bus to resolve names, but
|          * check the database directly. */
|         if (p->flags & EXEC_NSS_BYPASS_BUS) {
|                 x = strdup("SYSTEMD_NSS_BYPASS_BUS=1");
+---

Maybe sysv-rc should do something similar?

Ansgar



More information about the Pkg-systemd-maintainers mailing list