Skip to content

systemd doesn't start units in the default target #20003

@Pesa

Description

@Pesa

systemd version the issue has been seen with

v248.3

systemctl --version

systemd 248 (248)
+PAM -AUDIT -SELINUX -APPARMOR +IMA +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 +IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 +LZ4 +XZ -ZLIB +ZSTD -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid

Used distribution

Gentoo Linux

Linux kernel version used (uname -a)

Linux gentoo-amd64-dev 5.7.14-gentoo #2 SMP Thu Aug 13 02:17:28 CEST 2020 x86_64 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz GenuineIntel GNU/Linux

Expected behaviour you didn't see

systemd boots normally into multi-user.target (the default target on this system) and starts all the units pulled in by that target. This was working fine before I upgraded to v248.3 (from v247.2).

Unexpected behaviour you saw

systemd claims it reached multi-user.target but doesn't actually start any units in that target. Units in basic.target and all previous targets are started correctly.

Additional program output to the terminal or log subsystem illustrating the issue

$ systemctl get-default
multi-user.target

$ ls -l /etc/systemd/system/default.target
lrwxrwxrwx 1 root root 37 Apr 29 05:46 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target

$ journalctl ...
...
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Finished Flush Journal to Persistent Storage.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Finished Create Static Device Nodes in /dev.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Local File Systems (Pre).
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Local File Systems.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Rebuild Dynamic Linker Cache being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Store a System Token in an EFI Variable being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Commit a transient machine-id on disk being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Starting Create Volatile Files and Directories...
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Rule-based Manager for Device Events and Files being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Finished Create Volatile Files and Directories.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Rebuild Journal Catalog being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Condition check resulted in Update is Completed being skipped.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Starting Update UTMP about System Boot/Shutdown...
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Finished Update UTMP about System Boot/Shutdown.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target System Initialization.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Started Daily man-db regeneration.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Started Daily Cleanup of Temporary Directories.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Timers.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Listening on D-Bus System Message Bus Socket.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Listening on OpenSSH Server Socket.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Listening on UUID daemon activation socket.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Sockets.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Basic System.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: System is tainted: cgroupsv1
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Reached target Multi-User System.
Jun 23 09:26:57 gentoo-amd64-dev systemd[1]: Startup finished in 106ms.

$ systemctl list-jobs
No jobs running.

$ systemctl status
● gentoo-amd64-dev
    State: running
     Jobs: 0 queued
   Failed: 0 units

Note: The above output is with the hybrid cgroup hierarchy. I've also tried with the unified hierarchy and got the same result.

If I manually run systemctl isolate multi-user.target then all the enabled units are started as expected.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions