Delay with gdm after boot

I have an annoying delay on my freshly installed workstation with Alma Linux 9.8. I have a one minute delay between the last console messages and the gdm startup. During this time frame, systemctl list-jobs shows these two:

JOB UNIT TYPE STATE
2448 session-c2.scope start waiting
2278 user@42.service start running

After these are done (takes one minute) I can login via gdm.

I have tried many things to make the startup of user@42.service faster like masking pipewire and wireplumber, but it had no effect. What is systemd –user doing?

hi

user@42.service is the per-user systemd manager for UID 42.

On RHEL/AlmaLinux-like systems, UID 42 is often the gdm user, so this may be related to the GDM greeter session.

According to the systemd documentation, PID 1 starts user manager instances as user@UID.service, using the numerical UID as the instance identifier.

Reference:

Could you check the following? Please run these commands as root or with sudo.

getent passwd 42
id 42
loginctl user-status 42

journalctl -b _UID=42 --no-pager
journalctl -b -u user@42.service -u gdm -u systemd-logind --no-pager

If the delay is around 60 seconds, please also check for a timeout:

journalctl -b _UID=42 --no-pager | grep -Ei 'timeout|timed out|failed|dependency|start job'

thanks

Hey Redadmin, thanks for your answer. Here is the output of the commands you had asked for:

[mops197] /root # getent passwd 42                                              gdm:x:42:42:GNOME Display Manager:/var/lib/gdm:/usr/sbin/nologin
[mops197] /root # id 42                                                         uid=42(gdm) gid=42(gdm) groups=42(gdm)

[mops197] /root # loginctl user-status 42

gdm (42)
Since: Thu 2026-05-28 20:49:57 CEST; 1min 16s ago
State: active
Sessions: *c2
Linger: no
Unit: user-42.slice
├─session-c2.scope
│ ├─6154 “gdm-session-worker [pam/gdm-launch-environment]”
│ ├─6335 /usr/libexec/gdm-wayland-session --register-session “dbus-run-session – gnome-session --autostart /usr/share/gdm/greeter/autostart”
│ ├─6340 dbus-run-session – gnome-session --autostart /usr/share/gdm/greeter/autostart
│ ├─6341 dbus-daemon --nofork --print-address 4 --session
│ ├─6342 /usr/libexec/gnome-session-binary --autostart /usr/share/gdm/greeter/autostart
│ ├─6350 /usr/bin/gnome-shell
│ ├─6371 /usr/libexec/at-spi-bus-launcher
│ ├─6376 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
│ ├─6384 /usr/bin/Xwayland :1024 -rootless -noreset -accessx -core -auth /run/user/42/.mutter-Xwaylandauth.19CVP3 -listenfd 4 -listenfd 5 -displayfd 6 -initfd 7
│ ├─6401 /usr/libexec/xdg-permission-store
│ ├─6448 /usr/bin/gjs /usr/share/gnome-shell/org.gnome.Shell.Notifications
│ ├─6450 /usr/libexec/at-spi2-registryd --use-gnome-session
│ ├─6454 /usr/libexec/gsd-color
│ ├─6462 /usr/libexec/gsd-print-notifications
│ ├─6464 /usr/libexec/gsd-a11y-settings
│ ├─6466 /usr/libexec/gsd-power
│ ├─6467 /usr/libexec/gsd-media-keys
│ ├─6469 /usr/libexec/gsd-rfkill
│ ├─6471 /usr/libexec/gsd-keyboard
│ ├─6474 /usr/libexec/gsd-wacom
│ ├─6480 /usr/libexec/gsd-housekeeping
│ ├─6482 /usr/libexec/gsd-sound
│ ├─6489 /usr/libexec/gsd-datetime
│ ├─6504 /usr/libexec/gsd-smartcard
│ ├─6505 /usr/libexec/gsd-screensaver-proxy
│ ├─6506 /usr/libexec/gsd-sharing
│ ├─6525 /usr/libexec/gsd-printer
│ ├─6633 /usr/bin/gjs /usr/share/gnome-shell/org.gnome.ScreenSaver
│ ├─6634 ibus-daemon --panel disable -r --xim
│ ├─6652 /usr/libexec/ibus-dconf
│ ├─6654 /usr/libexec/ibus-x11 --kill-daemon
│ ├─6658 /usr/libexec/ibus-portal
│ └─6682 /usr/libexec/ibus-engine-simple
└─user@42.service

[mops197] /root # journalctl -b _UID=42 --no-pager
May 28 20:50:59 mops197.example.com systemd[6159]: Queued start job for default target Main User Target.
May 28 20:50:59 mops197.example.com systemd[6159]: Created slice User Application Slice.
May 28 20:50:59 mops197.example.com systemd[6159]: Mark boot as successful after the user session has run 2 minutes was skipped because of an unmet condition check (ConditionUser=!@syste
m).
May 28 20:50:59 mops197.example.com systemd[6159]: Started Daily Cleanup of User’s Temporary Directories.
May 28 20:50:59 mops197.example.com systemd[6159]: Reached target Paths.                                                                                                                  May 28 20:50:59 mops197.example.com systemd[6159]: Reached target Timers.
May 28 20:50:59 mops197.example.com systemd[6159]: Starting D-Bus User Message Bus Socket…                                                                                              May 28 20:50:59 mops197.example.com systemd[6159]: Listening on PipeWire PulseAudio.
May 28 20:50:59 mops197.example.com systemd[6159]: Listening on PipeWire Multimedia System Sockets.                                                                                       May 28 20:50:59 mops197.example.com systemd[6159]: Starting Create User’s Volatile Files and Directories…
May 28 20:50:59 mops197.example.com systemd[6159]: Listening on D-Bus User Message Bus Socket.                                                                                            May 28 20:50:59 mops197.example.com systemd[6159]: Reached target Sockets.
May 28 20:50:59 mops197.example.com systemd[6159]: Finished Create User’s Volatile Files and Directories.                                                                                 May 28 20:50:59 mops197.example.com systemd[6159]: Reached target Basic System.
May 28 20:50:59 mops197.example.com systemd[6159]: Reached target Main User Target.                                                                                                       May 28 20:50:59 mops197.example.com systemd[6159]: Startup finished in 141ms.
May 28 20:50:59 mops197.example.com systemd[6159]: Starting D-Bus User Message Bus…                                                                                                     May 28 20:50:59 mops197.example.com dbus-broker-launch[6337]: Policy to allow eavesdropping in /usr/share/dbus-1/session.conf +31: Eavesdropping is deprecated and ignored
May 28 20:50:59 mops197.example.com dbus-broker-launch[6337]: Policy to allow eavesdropping in /usr/share/dbus-1/session.conf +33: Eavesdropping is deprecated and ignored
May 28 20:50:59 mops197.example.com systemd[6159]: Started D-Bus User Message Bus.
May 28 20:50:59 mops197.example.com dbus-broker-lau[6337]: Ready                                                                                                                          May 28 20:50:59 mops197.example.com gnome-session[6342]: gnome-session-binary[6342]: WARNING: Could not parse desktop file orca-autostart.desktop or it references a not found TryExec bin
ary
May 28 20:50:59 mops197.example.com gnome-session-binary[6342]: WARNING: Could not parse desktop file orca-autostart.desktop or it references a not found TryExec binary
May 28 20:50:59 mops197.example.com gnome-shell[6350]: Adding device ‘/dev/dri/card0’ (i915) using atomic mode setting.                                                                   May 28 20:51:00 mops197.example.com gnome-shell[6350]: Created gbm renderer for ‘/dev/dri/card0’
May 28 20:51:00 mops197.example.com gnome-shell[6350]: Boot VGA GPU /dev/dri/card0 selected as primary
May 28 20:51:00 mops197.example.com gnome-shell[6350]: Using public X11 display :1024, (using :1025 for managed services)                                                                 May 28 20:51:00 mops197.example.com gnome-shell[6350]: Using Wayland display name ‘wayland-0’
May 28 20:51:00 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.a11y.Bus’ requested by ‘:1.4’ (uid=4
2 pid=6350 comm=“/usr/bin/gnome-shell " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:00 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.a11y.Bus’
May 28 20:51:01 mops197.example.com gnome-shell[6350]: Skipping parental controls support as it’s disabled
May 28 20:51:01 mops197.example.com gnome-shell[6350]: Unset XDG_SESSION_ID, getCurrentSessionProxy() called outside a user session. Asking logind directly.
May 28 20:51:01 mops197.example.com gnome-shell[6350]: Will monitor session c2
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.freedesktop.portal.IBus’ requested b
y ‘:1.6’ (uid=42 pid=6386 comm=“ibus-daemon --panel disable " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.freedesktop.impl.portal.PermissionSt
ore’ requested by ‘:1.3’ (uid=42 pid=6350 comm=”/usr/bin/gnome-shell " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.freedesktop.portal.IBus’
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.freedesktop.impl.portal.Permi
ssionStore’
May 28 20:51:01 mops197.example.com systemd[6159]: Created slice User Core Session Slice.
May 28 20:51:01 mops197.example.com systemd[6159]: Started PipeWire Multimedia Service.
May 28 20:51:01 mops197.example.com systemd[6159]: Started Multimedia Service Session Manager.
May 28 20:51:01 mops197.example.com systemd[6159]: Started PipeWire PulseAudio.
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com gnome-shell[6350]: Registering session with GDM
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.gnome.Shell.Notifications’ requested
by ‘:1.3’ (uid=42 pid=6350 comm=”/usr/bin/gnome-shell " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6376]: dbus-daemon[6376]: Activating service name=‘org.a11y.atspi.Registry’ requested by ‘:1.0’ (uid=42 pid=6350 comm
=“/usr/bin/gnome-shell " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6376]: dbus-daemon[6376]: Successfully activated service ‘org.a11y.atspi.Registry’
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6450]: SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
May 28 20:51:01 mops197.example.com wireplumber[6406]: spa.bluez5: BlueZ system service is not available
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.gnome.Shell.Notifications’
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-device: SPA handle ‘api.libcamera.enum.manager’ could not be loaded; is it installed?
May 28 20:51:01 mops197.example.com wireplumber[6406]: s-monitors-libcamera: PipeWire’s libcamera SPA plugin is missing or broken. Some camera types may not be supported.
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.freedesktop.systemd1’ requested by ’
:1.25’ (uid=42 pid=6506 comm=”/usr/libexec/gsd-sharing " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activated service ‘org.freedesktop.systemd1’ failed: Process org.
freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with
status 1
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.freedesktop.systemd1’ requested by ’
:1.25’ (uid=42 pid=6506 comm=“/usr/libexec/gsd-sharing " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with
status 1
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activated service ‘org.freedesktop.systemd1’ failed: Process org.
freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with
status 1
May 28 20:51:01 mops197.example.com gnome-shell[6350]: Error looking up permission: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for geolocation
May 28 20:51:01 mops197.example.com gnome-session-binary[6342]: Entering running state
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.gnome.Shell.Screencast’ requested by
‘:1.21’ (uid=42 pid=6467 comm=”/usr/libexec/gsd-media-keys " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com gsd-media-keys[6467]: Failed to grab accelerator for keybinding settings:hibernate
May 28 20:51:01 mops197.example.com gsd-media-keys[6467]: Failed to grab accelerator for keybinding settings:playback-repeat
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.gnome.ScreenSaver’ requested by ‘:1.
22’ (uid=42 pid=6466 comm="/usr/libexec/gsd-power " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com gnome-shell[6350]: ATK Bridge is disabled but a11y has already been enabled.
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activating service name=‘org.freedesktop.portal.IBus’ requested b
y ‘:1.33’ (uid=42 pid=6634 comm="ibus-daemon --panel disable -r --xim " label=“system_u:system_r:xdm_t:s0-s0:c0.c1023”)
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.freedesktop.portal.IBus’
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.gnome.ScreenSaver’
May 28 20:51:02 mops197.example.com org.gnome.Shell.desktop[6671]: The XKEYBOARD keymap compiler (xkbcomp) reports:
May 28 20:51:02 mops197.example.com org.gnome.Shell.desktop[6671]: > Warning:          Unsupported maximum keycode 708, clipping.
May 28 20:51:02 mops197.example.com org.gnome.Shell.desktop[6671]: >                   X11 cannot support keycodes above 255.
May 28 20:51:02 mops197.example.com org.gnome.Shell.desktop[6671]: Errors from xkbcomp are not fatal to the X server
May 28 20:51:02 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Successfully activated service ‘org.gnome.Shell.Screencast’

[mops197] /root # journalctl -b _UID=42 --no-pager | grep -Ei ‘timeout|timed out|failed|dependency|start job’
May 28 20:50:59 mops197.example.com systemd[6159]: Queued start job for default target Main User Target.
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com wireplumber[6406]: wp-event-dispatcher: wp_event_dispatcher_unregister_hook: assertion ‘already_registered_dispatcher == self’ failed
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activated service ‘org.freedesktop.systemd1’ failed: Process org.freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com /usr/libexec/gdm-wayland-session[6341]: dbus-daemon[6341]: [session uid=42 pid=6341] Activated service ‘org.freedesktop.systemd1’ failed: Process org.freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-sharing[6506]: Failed to StopUnit service: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
May 28 20:51:01 mops197.example.com gsd-media-keys[6467]: Failed to grab accelerator for keybinding settings:hibernate
May 28 20:51:01 mops197.example.com gsd-media-keys[6467]: Failed to grab accelerator for keybinding settings:playback-repeat

Hi,

It looks like the root cause has not been identified yet.

From the current logs, user@42.service itself does not seem to be the part that is taking 60 seconds. It looks more likely that something around GDM/greeter startup is waiting for about 60 seconds before or around that point.

Could you please run the following commands?

journalctl -b --since “2026-05-28 20:49:40” --until “2026-05-28 20:51:10” --no-pager
systemd-analyze blame
systemd-analyze critical-chain gdm.service
journalctl -b -u gdm -u systemd-logind -u accounts-daemon --no-pager

thanks

A bit of explanation: sue_boot.service does configuration stuff and sue_done.service does a systemctl isolate on the true default target. Maybe it somehow waits for user@42.service?

[mops197] /root # journalctl -b --since "2026-05-28 20:49:40" --until "2026-05-28 20:51:10" --no-pager
-- No entries --
1min 2.887s sue_boot.service
1min 2.174s user@42.service
     6.773s sssd.service
     5.517s dev-ttyS0.device
     5.517s sys-devices-pnp0-00:01-tty-ttyS0.device
     5.516s dev-ttyS1.device
     5.516s sys-devices-pci0000:00-0000:00:16.3-tty-ttyS1.device
     5.514s dev-ttyS2.device
     5.514s sys-devices-platform-serial8250-tty-ttyS2.device
     5.514s sys-devices-platform-serial8250-tty-ttyS3.device
     5.514s dev-ttyS3.device
     5.513s sys-module-configfs.device
     5.187s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.187s sys-devices-pci0000:00-0000:00:1b.0-0000:01:00.0-nvme-nvme0-nvme0n1>
     5.187s dev-disk-by\x2dpartuuid-0930443e\x2d454d\x2d4fd6\x2da762\x2dd8cba2a>
     5.187s dev-disk-by\x2dpath-pci\x2d0000:01:00.0\x2dnvme\x2d1\x2dpart3.device
     5.187s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.187s dev-nvme0n1p3.device
     5.187s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB__193123039579\x2d>
     5.187s dev-disk-by\x2did-nvme\x2deui.000000000000000100a0751923039579\x2dp>
     5.140s sys-devices-pci0000:00-0000:00:1f.6-net-em1.device
     5.140s sys-subsystem-net-devices-em1.device
     5.127s sys-devices-pci0000:00-0000:00:1b.0-0000:01:00.0-nvme-nvme0-nvme0n1>
     5.127s dev-disk-by\x2duuid-3A13\x2d9B18.device
     5.127s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.127s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.127s dev-disk-by\x2dpartuuid-205d4e86\x2dd54a\x2d4a3f\x2d8821\x2d349ca75>
     5.127s dev-nvme0n1p1.device
     5.127s dev-disk-by\x2dpath-pci\x2d0000:01:00.0\x2dnvme\x2d1\x2dpart1.device
     5.127s dev-disk-by\x2did-nvme\x2deui.000000000000000100a0751923039579\x2dp>
     5.127s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB__193123039579\x2d>
     5.127s dev-disk-by\x2dpartlabel-EFI\x5cx20System\x5cx20Partition.device
     5.094s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.094s dev-disk-by\x2did-nvme\x2deui.000000000000000100a0751923039579\x2dp>
     5.094s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.094s dev-nvme0n1p2.device
     5.094s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB__193123039579\x2d>
     5.094s dev-disk-by\x2dpath-pci\x2d0000:01:00.0\x2dnvme\x2d1\x2dpart2.device
     5.094s sys-devices-pci0000:00-0000:00:1b.0-0000:01:00.0-nvme-nvme0-nvme0n1>
     5.094s dev-disk-by\x2dpartuuid-d4e9e060\x2d401b\x2d479a\x2da339\x2d0bfc731>
     5.094s dev-disk-by\x2duuid-c8c7e0c4\x2d584c\x2d4d6a\x2db366\x2d18d8bf265dc>
     5.088s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.088s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB__193123039579.dev>
     5.088s dev-disk-by\x2ddiskseq-1.device
     5.088s sys-devices-pci0000:00-0000:00:1b.0-0000:01:00.0-nvme-nvme0-nvme0n1>
     5.088s dev-disk-by\x2dpath-pci\x2d0000:01:00.0\x2dnvme\x2d1.device
     5.088s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     5.088s dev-disk-by\x2did-nvme\x2deui.000000000000000100a0751923039579.devi>
     5.088s dev-nvme0n1.device
     4.246s dracut-initqueue.service
     3.506s NetworkManager-wait-online.service
     1.630s kdump.service
      927ms dnf-makecache.service
      743ms prometheus_announce.service
      638ms openafs-client.service
      432ms initrd-switch-root.service
      342ms postfix.service
      327ms udisks2.service
      306ms NetworkManager.service
      273ms nftables.service
      260ms systemd-tmpfiles-setup.service
      182ms power-profiles-daemon.service
      176ms user@0.service
      143ms auditd.service
      137ms chronyd.service
      107ms systemd-udev-trigger.service
       82ms upower.service
       82ms sysstat-summary.service
       80ms avahi-daemon.service
       76ms dracut-cmdline.service
       74ms systemd-resolved.service
       68ms expire-downtime.service
       65ms polkit.service
       62ms systemd-udevd.service
       62ms modprobe@configfs.service
       62ms modprobe@fuse.service
       61ms modprobe@drm.service
       60ms modprobe@efi_pstore.service
       54ms dev-hugepages.mount
       54ms home.mount
       54ms dev-mqueue.mount
       53ms tmp.mount
       52ms systemd-vconsole-setup.service
       52ms sys-kernel-debug.mount
       52ms smartd.service
       51ms rhsmcertd.service
       51ms dev-mapper-vg00\x2dswap.swap
       51ms rtkit-daemon.service
       50ms sys-kernel-tracing.mount
       49ms kmod-static-nodes.service
       48ms var-lib-cvmfs.mount
       48ms var-cache-afs.mount
       48ms dracut-pre-udev.service
       46ms lvm2-monitor.service
       46ms systemd-tmpfiles-clean.service
       46ms var-lib-flatpak.mount
       46ms var.mount
       43ms nis-domainname.service
       40ms systemd-random-seed.service
       39ms systemd-logind.service
       38ms autofs.service
       37ms logrotate.service
       35ms systemd-modules-load.service
       35ms dracut-pre-pivot.service
       34ms systemd-network-generator.service
       33ms sysstat.service
       33ms dbus-broker.service
       33ms user-runtime-dir@0.service
       31ms systemd-remount-fs.service
       31ms rsyslog.service
       30ms initrd-cleanup.service
       30ms systemd-fsck@dev-disk-by\x2duuid-3A13\x2d9B18.service
       28ms systemd-tmpfiles-setup-dev.service
       28ms boot.mount
       27ms import-state.service
       26ms systemd-journal-flush.service
       23ms boot-efi.mount
       23ms switcheroo-control.service
       22ms systemd-journald.service
       21ms accounts-daemon.service
       20ms prometheus-nvme-exporter.service
       20ms colord.service
       15ms systemd-boot-update.service
       13ms systemd-sysusers.service
       12ms systemd-fsck-root.service
       12ms sshd.service
       11ms systemd-user-sessions.service
       11ms initrd-parse-etc.service
       11ms systemd-sysctl.service
       10ms user-runtime-dir@42.service
        9ms gdm.service
        9ms var-tmp.mount
        8ms systemd-update-utmp.service
        7ms systemd-update-utmp-runlevel.service
        6ms raid-check.service
        6ms sys-fs-fuse-connections.mount
        5ms initrd-udevadm-cleanup-db.service
        5ms dracut-shutdown.service
        5ms sysstat-collect.service
        4ms set_bootflag.service
        4ms rm_bootflag.service
        2ms sue_reboot.service
[mops197] /root # systemd-analyze critical-chain gdm.service
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

gdm.service +9ms
└─basic.target @2.060s
  └─dbus-broker.service @2.024s +33ms
    └─dbus.socket @2.001s
      └─sysinit.target @1.993s
        └─systemd-resolved.service @1.916s +74ms
          └─systemd-tmpfiles-setup.service @1.639s +260ms
            └─import-state.service @1.595s +27ms
              └─local-fs.target @1.583s
                └─run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount @2>
                  └─local-fs-pre.target @519ms
                    └─systemd-tmpfiles-setup-dev.service @489ms +28ms
                      └─kmod-static-nodes.service @408ms +49ms
                        └─systemd-journald.socket
                          └─system.slice
                            └─-.slice
[mops197] /root # journalctl -b -u gdm -u systemd-logind -u accounts-daemon --no-pager
May 29 07:25:55 mops197.example.com systemd[1]: Starting User Login Management...
May 29 07:25:55 mops197.example.com systemd-logind[1308]: New seat seat0.
May 29 07:25:55 mops197.example.com systemd-logind[1308]: Watching system buttons on /dev/input/event2 (Power Button)
May 29 07:25:55 mops197.example.com systemd-logind[1308]: Watching system buttons on /dev/input/event1 (Power Button)
May 29 07:25:55 mops197.example.com systemd-logind[1308]: Watching system buttons on /dev/input/event0 (Sleep Button)
May 29 07:25:55 mops197.example.com systemd-logind[1308]: Watching system buttons on /dev/input/event4 (Dell KB216 Wired Keyboard)
May 29 07:25:55 mops197.example.com systemd-logind[1308]: Watching system buttons on /dev/input/event5 (Dell KB216 Wired Keyboard System Control)
May 29 07:25:55 mops197.example.com systemd[1]: Started User Login Management.
May 29 07:25:55 mops197.example.com systemd-logind[1308]: New session 1 of user root.
May 29 07:26:56 mops197.example.com systemd[1]: Starting Accounts Service...
May 29 07:26:56 mops197.example.com accounts-daemon[6285]: started daemon version 0.6.55
May 29 07:26:56 mops197.example.com systemd[1]: Started Accounts Service.
May 29 07:26:56 mops197.example.com systemd[1]: Starting GNOME Display Manager...
May 29 07:26:56 mops197.example.com systemd[1]: Started GNOME Display Manager.
May 29 07:26:56 mops197.example.com systemd-logind[1308]: New session c2 of user gdm.
May 29 08:01:03 mops197.example.com systemd-logind[1308]: Session 1 logged out. Waiting for processes to exit.
May 29 08:01:03 mops197.example.com systemd-logind[1308]: Removed session 1.
May 29 08:44:20 mops197.example.com systemd-logind[1308]: New session 4 of user root.
May 29 09:33:41 mops197.example.com systemd-logind[1308]: Session 4 logged out. Waiting for processes to exit.
May 29 09:33:41 mops197.example.com systemd-logind[1308]: Removed session 4.
May 29 13:39:22 mops197.example.com systemd-logind[1308]: New session 7 of user root.
May 29 13:39:28 mops197.example.com systemd-logind[1308]: Session 7 logged out. Waiting for processes to exit.
May 29 13:39:28 mops197.example.com systemd-logind[1308]: Removed session 7.
May 30 07:03:41 mops197.example.com systemd-logind[1308]: New session 15 of user root.
May 30 07:03:43 mops197.example.com systemd-logind[1308]: Session 15 logged out. Waiting for processes to exit.
May 30 07:03:43 mops197.example.com systemd-logind[1308]: Removed session 15.
May 30 07:03:43 mops197.example.com systemd-logind[1308]: New session 17 of user root.
May 30 07:03:44 mops197.example.com systemd-logind[1308]: Session 17 logged out. Waiting for processes to exit.
May 30 07:03:44 mops197.example.com systemd-logind[1308]: Removed session 17.
May 30 07:03:44 mops197.example.com systemd-logind[1308]: New session 18 of user root.
May 30 07:03:44 mops197.example.com systemd-logind[1308]: Session 18 logged out. Waiting for processes to exit.
May 30 07:03:44 mops197.example.com systemd-logind[1308]: Removed session 18.
Jun 01 07:47:58 mops197.example.com systemd-logind[1308]: New session 22 of user root.

Hi,

Thanks for the logs.

From the output, it looks like the delay is not in gdm.service itself.

My current understanding is:

sue_boot.service takes about 60 seconds

sue_done.service runs systemctl isolate to switch to the real default target

accounts-daemon and gdm.service start after that

As a result, it looks like GDM is delayed by about 1 minute

It seems there is some custom boot flow here.

Could you please run the following commands?

systemctl cat sue_boot.service sue_done.service
systemctl show sue_boot.service sue_done.service -p Before -p After -p Wants -p Requires
journalctl -b -u sue_boot.service -u sue_done.service --no-pager
systemd-analyze critical-chain sue_boot.service

Thanks.

Here’s the requested information:

[mops197] /root # systemctl cat sue_boot.service sue_done.service
# /usr/lib/systemd/system/sue_boot.service
# -*- conf -*-

[Unit]
Description=sue_boot: Example Com. Maintenance 
After=postfix.service

[Service]
ExecStart=/usr/sue-ng/libexec/sue_boot start
ExecStop=/usr/sue-ng/libexec/sue_boot stop
Type=oneshot
RemainAfterExit=yes
TimeoutSec=0
SuccessExitStatus=0 1
StandardOutput=journal+console

[Install]
WantedBy=sue_boot.target elz.target


# /usr/lib/systemd/system/sue_done.service
# -*- conf -*-

[Unit]
Description=sue_done: Isolate the Default Target 
After=sue_boot.service sue_reboot.service

[Service]
#ExecStart=/usr/bin/systemctl isolate default.target
ExecStart=/usr/bin/systemctl isolate elz.target
# the type *must* be simple, or it won't work
Type=simple
RemainAfterExit=yes

[Install]
WantedBy=sue_boot.target
[mops197] /root # systemctl show sue_boot.service sue_done.service -p Before -p After -p Wants -p Requires
Requires=system.slice sysinit.target
Wants=
Before=sue_done.service sue_reboot.service sue_boot.target shutdown.target
After=postfix.service basic.target system.slice sysinit.target systemd-journald.socket

Requires=system.slice sysinit.target
Wants=
Before=shutdown.target sue_boot.target
After=sue_boot.service sue_reboot.service systemd-journald.socket basic.target sysinit.target system.slice
[mops197] /root # journalctl -b -u sue_boot.service -u sue_done.service --no-pager
Jun 03 12:48:21 mops197.example.com systemd[1]: Starting sue_boot: Example Comp. System Maintenance...
Jun 03 12:48:21 mops197.example.com sue_boot[1003]: Waiting for network to really become online ...
Jun 03 12:48:25 mops197.example.com sue_boot[1004]: waited 0 seconds for the gateway and 2 seconds until it pinged
Jun 03 12:48:25 mops197.example.com sue_boot[1003]:    *************************************************************************
Jun 03 12:48:25 mops197.example.com sue_boot[1003]:    * These updates may take a considerable amount of time. Please do _not_ *
Jun 03 12:48:25 mops197.example.com sue_boot[1003]:    * interrupt them in any way, or you _will_ damage the operating system. *
Jun 03 12:48:25 mops197.example.com sue_boot[1003]:    *************************************************************************
Jun 03 12:48:25 mops197.example.com sue_boot[1003]: 
Jun 03 12:48:26 mops197.example.com platform-python[1085]: ansible-vamos_init_vars Invoked with path=/etc/ansible/facts.d/vamos.fact configsrv_url=https://configsrv.example.com/cgi-bin/vamosw/mydata-json
Jun 03 12:48:27 mops197.example.com sue_boot[1003]: Starting sue-ng.run...
Jun 03 12:48:27 mops197.example.com sue_boot[1069]: localhost | CHANGED => {
Jun 03 12:48:27 mops197.example.com sue_boot[1069]:     "changed": true
Jun 03 12:48:27 mops197.example.com sue_boot[1069]: }
Jun 03 12:48:28 mops197.example.com platform-python[1108]: ansible-vamos_init_play Invoked with checkout_path=/var/cache/sue-ng/checkout.yml playbook_path=/var/cache/sue-ng/playbook.yml gitrepo=https://repo-proxy.example.com/ansible-role/
Jun 03 12:48:28 mops197.example.com sue_boot[1092]: localhost | SUCCESS => {
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:     "changed": false,
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:     "checkout_changed": false,
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:     "playbook_changed": false,
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:     "roles": [
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "aaru-ng",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "linux-settings",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "nftables",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "kerberos-client",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "autofs",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "rsyslog",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "account-info",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "sssd",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "authselect",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "etc-hosts",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "openssh",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "arcx-client",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "fluentbit",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "cvmfs-client",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "flatpak",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "htcondor",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "motd",
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:         "network-config"
Jun 03 12:48:28 mops197.example.com sue_boot[1092]:     ]
Jun 03 12:48:28 mops197.example.com sue_boot[1092]: }
Jun 03 12:48:28 mops197.example.com sue_boot[1113]: PLAY [localhost] ***************************************************************
Jun 03 12:48:28 mops197.example.com sue_boot[1113]: TASK [Gathering Facts] *********************************************************
Jun 03 12:48:28 mops197.example.com platform-python[1129]: ansible-ansible.legacy.setup Invoked with gather_subset=['all'] gather_timeout=10 filter=[] fact_path=/etc/ansible/facts.d
Jun 03 12:48:29 mops197.example.com sue_boot[1113]: ok: [localhost]
Jun 03 12:48:29 mops197.example.com sue_boot[1113]: TASK [checkout roles] **********************************************************
Jun 03 12:48:29 mops197.example.com platform-python[1195]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/aaru-ng.git dest=./roles/aaru-ng depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:30 mops197.example.com platform-python[1240]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/linux-settings.git dest=./roles/linux-settings depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:31 mops197.example.com platform-python[1284]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/nftables.git dest=./roles/nftables depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:31 mops197.example.com platform-python[1328]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/kerberos-client.git dest=./roles/kerberos-client depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:32 mops197.example.com platform-python[1372]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/autofs.git dest=./roles/autofs depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:32 mops197.example.com platform-python[1416]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/rsyslog.git dest=./roles/rsyslog depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:33 mops197.example.com platform-python[1460]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/account-info.git dest=./roles/account-info depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:34 mops197.example.com platform-python[1504]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/sssd.git dest=./roles/sssd depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:34 mops197.example.com platform-python[1548]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/authselect.git dest=./roles/authselect depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:35 mops197.example.com platform-python[1592]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/etc-hosts.git dest=./roles/etc-hosts depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:35 mops197.example.com platform-python[1636]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/openssh.git dest=./roles/openssh depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:36 mops197.example.com platform-python[1680]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/arcx-client.git dest=./roles/arcx-client depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:37 mops197.example.com platform-python[1724]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/fluentbit.git dest=./roles/fluentbit depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:37 mops197.example.com platform-python[1768]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/cvmfs-client.git dest=./roles/cvmfs-client depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:38 mops197.example.com platform-python[1813]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/flatpak.git dest=./roles/flatpak depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:38 mops197.example.com platform-python[1857]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/htcondor.git dest=./roles/htcondor depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:39 mops197.example.com platform-python[1901]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/motd.git dest=./roles/motd depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:40 mops197.example.com platform-python[1945]: ansible-git Invoked with repo=https://repo-proxy.example.com/ansible-role/network-config.git dest=./roles/network-config depth=1 version=master remote=origin force=False clone=True update=True verify_commit=False gpg_whitelist=[] accept_hostkey=False accept_newhostkey=False bare=False recursive=True single_branch=False track_submodules=False refspec=None reference=None key_file=None ssh_opts=None executable=None umask=None archive=None archive_prefix=None separate_git_dir=None
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'aaru-ng', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'linux-settings', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'nftables', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'kerberos-client', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'autofs', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'rsyslog', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'account-info', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'sssd', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'authselect', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'etc-hosts', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'openssh', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'arcx-client', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'fluentbit', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'cvmfs-client', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'flatpak', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'htcondor', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'motd', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: ok: [localhost] => (item={'key': 'network-config', 'value': 'master'})
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: PLAY RECAP *********************************************************************
Jun 03 12:48:40 mops197.example.com sue_boot[1113]: localhost                  : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
Jun 03 12:48:40 mops197.example.com sudo[1980]:     root : PWD=/ ; USER=root ; COMMAND=/bin/ansible-playbook -i /var/cache/sue-ng/localhost.ini -e SUENG_MODE=boot /var/cache/sue-ng/playbook.yml --skip-tags=noauto
Jun 03 12:48:40 mops197.example.com sudo[1980]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 03 12:49:24 mops197.example.com sue-ng[4653]: finished (mode: boot)
Jun 03 12:49:24 mops197.example.com user[4654]: sue.run: finished (boot)...
Jun 03 12:49:24 mops197.example.com systemd[1]: Finished sue_boot: Example Comp. System Maintenance.
Jun 03 12:49:24 mops197.example.com systemd[1]: Started sue_done: Isolate the Default Target.
[mops197] /root #  systemd-analyze critical-chain sue_boot.service
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

sue_boot.service +1min 3.028s
└─postfix.service @2.371s +362ms
  └─network.target @2.353s
    └─NetworkManager.service @2.048s +303ms
      └─basic.target @2.038s
        └─dbus-broker.service @2.005s +30ms
          └─dbus.socket @1.989s
            └─sysinit.target @1.980s
              └─systemd-resolved.service @1.901s +76ms
                └─systemd-tmpfiles-setup.service @1.627s +258ms
                  └─import-state.service @1.588s +26ms
                    └─local-fs.target @1.572s
                      └─run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount @2.453s
                        └─local-fs-pre.target @520ms
                          └─systemd-tmpfiles-setup-dev.service @490ms +28ms
                            └─kmod-static-nodes.service @411ms +48ms
                              └─systemd-journald.socket
                                └─system.slice
                                  └─-.slice

The interesting thing is, that the same setup doesn’t cause the 1 minute delay on Alma Linux 10.2. The sue_boot.service is exactly the same as on Alma Linux 9.

I have noticed, that the user@42.service isn’t even needed. I have masked it and my delay is gone.

# systemd-analyze blame
1min 3.020s sue_boot.service
     4.830s dev-ttyS2.device
     4.830s sys-devices-platform-serial8250-tty-ttyS2.device
     4.830s dev-ttyS3.device
     4.830s sys-devices-platform-serial8250-tty-ttyS3.device
     4.830s sys-devices-pnp0-00:01-tty-ttyS0.device
     4.830s dev-ttyS0.device
     4.826s sys-devices-pci0000:00-0000:00:16.3-tty-ttyS1.device
     4.826s dev-ttyS1.device
     4.822s sys-module-configfs.device
     4.794s sssd.service
     4.453s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB__193123039579\x2d>
     4.453s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     4.453s dev-disk-by\x2dpath-pci\x2d0000:01:00.0\x2dnvme\x2d1\x2dpart3.device
     4.453s dev-disk-by\x2dpartuuid-983a317a\x2d39e8\x2d4132\x2da863\x2d77c05ed>
     4.453s dev-disk-by\x2did-nvme\x2deui.000000000000000100a0751923039579\x2dp>
     4.453s dev-nvme0n1p3.device
     4.453s dev-disk-by\x2did-nvme\x2dMicron_2200S_NVMe_256GB_________193123039>
     4.453s sys-devices-pci0000:00-0000:00:1b.0-0000:01:00.0-nvme-nvme0-nvme0n1>
     4.402s sys-subsystem-net-devices-em1.device
     4.402s sys-devices-pci0000:00-0000:00:1f.6-net-em1.device
     4.399s dev-disk-by\x2dpartuuid-31ba5189\x2d2236\x2d4b84\x2dbd6a\x2d55e9492>
     4.399s dev-disk-by\x2dpartlabel-EFI\x5cx20System\x5cx20Partition.device

Thank you for the logs.

This does not look like a GDM issue.

Evidence:

  • systemd-analyze critical-chain shows sue_boot.service +1min 3.028s.
  • The journal shows that sue_boot.service runs sue-ng / Ansible during boot.
  • After that, sue_done.service runs systemctl isolate elz.target.

Primary source:

According to the systemd documentation, systemctl isolate starts the specified unit and stops units that are not dependencies of it.

So the delay is likely caused by the custom sue_boot / sue_done boot flow, not by GDM itself.

The fix is to change that boot flow:
Do not run sue_boot.service as a blocking dependency before graphical login. Instead, run the sue-ng / Ansible task after graphical.target is reached, or make it a non-blocking background service.

Masking user@42.service only hides the symptom. It is not the real fix.

1 Like