You are not logged in.
Ever since troubleshooting a problem setting up a connection over xrdp getty has started to print the login prompt multiple times on boot. I fiddled with a lot of settings back then and I must have forgot to revert unnecessary changes I made back then, but I can't for the life of me figure out what is causing this problem.
This only happens on boot. When changing to a different tty or logging out of a session the login prompt is only printed once. There is no sign of a failed login attempt or anything of that sort during the boot so it looks like it is just a printing mishap. Journalctl also does not show any sort of error related to getty. I have time included in my /etc/issue so I can see that the login prompt is always printed 3 times usually within 5 seconds.
This does not cause any issue with logging in or using the computer otherwise so I have let it be for a while, but it looks odd and I am curious to find out what causes it. I have no display manager installed and have always only used getty on this installation. I have yet to find anything off-looking in /etc/pam.d files which I remember having taken a look at back when this issue started.
Does anyone have an idea what to check next?
/etc/issue
\d \t
\S{PRETTY_NAME} \r (\l)/etc/pam.d/system-auth
#%PAM-1.0
auth required pam_faillock.so preauth
# Optionally use requisite above if you do not want to prompt for the password
# on locked accounts.
-auth [success=2 default=ignore] pam_systemd_home.so
auth [success=1 default=bad] pam_unix.so try_first_pass nullok
auth [default=die] pam_faillock.so authfail
auth optional pam_permit.so
auth required pam_env.so
auth required pam_faillock.so authsucc
# If you drop the above call to pam_faillock.so the lock will be done also
# on non-consecutive authentication failures.
-account [success=1 default=ignore] pam_systemd_home.so
account required pam_unix.so
account optional pam_permit.so
account required pam_time.so
-password [success=1 default=ignore] pam_systemd_home.so
password required pam_unix.so try_first_pass nullok shadow
password optional pam_permit.so
-session optional pam_systemd_home.so
session required pam_limits.so
session required pam_unix.so
session optional pam_permit.sojournalctl during getty's boot
Apr 18 15:11:46 edellakavija systemd[1]: Started User Login Management.
Apr 18 15:11:46 edellakavija systemd[1]: Finished Initialize hardware monitoring sensors.
Apr 18 15:11:46 edellakavija systemd[1]: Starting Manage, Install and Generate Color Profiles...
Apr 18 15:11:46 edellakavija systemd[1]: Started Manage, Install and Generate Color Profiles.
Apr 18 15:11:46 edellakavija systemd[1]: Started CUPS Scheduler.
Apr 18 15:11:46 edellakavija systemd[1]: Mounting RPC Pipe File System...
Apr 18 15:11:46 edellakavija kernel: RPC: Registered named UNIX socket transport module.
Apr 18 15:11:46 edellakavija kernel: RPC: Registered udp transport module.
Apr 18 15:11:46 edellakavija kernel: RPC: Registered tcp transport module.
Apr 18 15:11:46 edellakavija kernel: RPC: Registered tcp-with-tls transport module.
Apr 18 15:11:46 edellakavija kernel: RPC: Registered tcp NFSv4.1 backchannel transport module.
Apr 18 15:11:46 edellakavija systemd[1]: Mounted RPC Pipe File System.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target rpc_pipefs.target.
Apr 18 15:11:46 edellakavija systemd[1]: RPC security service for NFS client and server skipped, unmet condition check ConditionPathExists=/etc/krb5.keytab
Apr 18 15:11:46 edellakavija systemd[1]: Reached target NFS client services.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target Preparation for Remote File Systems.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target Remote File Systems.
Apr 18 15:11:46 edellakavija systemd[1]: TPM PCR Barrier (User) skipped, unmet condition check ConditionSecurity=measured-uki
Apr 18 15:11:46 edellakavija systemd[1]: Starting Permit User Sessions...
Apr 18 15:11:46 edellakavija systemd[1]: Finished Permit User Sessions.
Apr 18 15:11:46 edellakavija systemd[1]: Started Getty on tty1.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target Login Prompts.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target Multi-User System.
Apr 18 15:11:46 edellakavija systemd[1]: Reached target Graphical Interface.
Apr 18 15:11:46 edellakavija systemd[1]: Startup finished in 17.597s (firmware) + 6.577s (loader) + 2.647s (kernel) + 6.356s (initrd) + 3.847s (userspace) = 37.026s.
Apr 18 15:11:46 edellakavija kernel: fbcon: Taking over console
Apr 18 15:11:46 edellakavija kernel: [drm] pre_validate_dsc:1667 MST_DSC dsc precompute is not needed
Apr 18 15:11:46 edellakavija systemd[1]: systemd-vconsole-setup.service: Deactivated successfully.
Apr 18 15:11:46 edellakavija systemd[1]: Stopped Virtual Console Setup.
Apr 18 15:11:46 edellakavija systemd[1]: Stopping Virtual Console Setup...
Apr 18 15:11:46 edellakavija systemd[1]: Starting Virtual Console Setup...
Apr 18 15:11:46 edellakavija kernel: Console: switching to colour frame buffer device 240x67
Apr 18 15:11:46 edellakavija systemd-vconsole-setup[879]: Configuration of first virtual console was skipped, ignoring remaining ones.
Apr 18 15:11:46 edellakavija systemd[1]: Finished Virtual Console Setup.
Apr 18 15:11:49 edellakavija systemd-networkd[664]: enp42s0: Gained carrier
Apr 18 15:11:49 edellakavija kernel: r8169 0000:2a:00.0 enp42s0: Link is Up - 1Gbps/Full - flow control rx/tx
Apr 18 15:11:49 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=6542 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:49 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=6759 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:50 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=6999 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:51 edellakavija systemd-networkd[664]: enp42s0: Gained IPv6LL
Apr 18 15:11:51 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=fe80:0000:0000:0000:365a:60ff:fe3b:dd9b DST=ff02:0000:0000:0000:0000:0000:0001:0003 LEN=78 TC=0 HOPLIMIT=255 FLOWLBL=947435 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:51 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=fe80:0000:0000:0000:365a:60ff:fe3b:dd9b DST=ff02:0000:0000:0000:0000:0000:0001:0003 LEN=78 TC=0 HOPLIMIT=255 FLOWLBL=947435 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:51 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=fe80:0000:0000:0000:365a:60ff:fe3b:dd9b DST=ff02:0000:0000:0000:0000:0000:0001:0003 LEN=78 TC=0 HOPLIMIT=255 FLOWLBL=947435 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 18 15:11:57 edellakavija dbus-broker-launch[806]: Activation request for 'org.freedesktop.home1' failed: The systemd unit 'dbus-org.freedesktop.home1.service' could not be found.Last edited by Namahage (2026-04-20 15:28:47)
Offline
My file /etc/issue looks simpler:
\S{PRETTY_NAME} \r (\l)Post output of commands:
systemctl list-unit-files --state enabled
systemd-analyze critical-chain
systemd-analyze --user dump|grep getty
systemd-analyze dot 'getty.*' | dot -Tsvg > getty.svg
systemd-analyze dump getty.target
systemd-analyze dump getty-pre.target
systemd-analyze dump getty@tty1.serviceLast edited by xerxes_ (2026-04-18 16:01:50)
Offline
I added \d to print the date and \t to print the time of booting so that's why there is an additional line at the beginning of /etc/issue. It has worked without a problem for a long time before this.
systemctl list-unit-files --state enabled
UNIT FILE STATE PRESET
cups.path enabled disabled
cups.service enabled disabled
getty@.service enabled enabled
lm_sensors.service enabled disabled
systemd-network-generator.service enabled enabled
systemd-networkd-wait-online.service enabled enabled
systemd-networkd.service enabled enabled
systemd-resolved.service enabled enabled
ufw.service enabled disabled
cups.socket enabled disabled
systemd-networkd-resolve-hook.socket enabled disabled
systemd-networkd-varlink-metrics.socket enabled disabled
systemd-networkd-varlink.socket enabled disabled
systemd-networkd.socket enabled disabled
systemd-resolved-monitor.socket enabled disabled
systemd-resolved-varlink.socket enabled disabled
systemd-userdbd.socket enabled enabled
nfs-client.target enabled disabled
remote-fs.target enabled enabled
19 unit files listed.systemd-analyze critical-chain
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.
graphical.target @3.847s
└─multi-user.target @3.847s
└─getty.target @3.847s
└─getty@tty1.service @3.846s
└─systemd-user-sessions.service @3.829s +16ms
└─remote-fs.target @3.828s
└─remote-fs-pre.target @3.828s
└─nfs-client.target @3.828s
└─gssproxy.service @3.152s +54ms
└─basic.target @3.150s
└─dbus-broker.service @3.106s +31ms
└─dbus.socket @3.101s +33us
└─sysinit.target @3.100s
└─systemd-update-done.service @3.084s +15ms
└─ldconfig.service @2.882s +201ms
└─systemd-tmpfiles-setup.service @2.807s +73ms
└─local-fs.target @2.804s
└─home.mount @2.761s +42ms
└─systemd-fsck@dev-disk-by\x2duuid-cf526b98\x2dc67a\x2d45e1\x2db251\x2d6234a7f06f9b.service @2.158s +39ms
└─dev-disk-by\x2duuid-cf526b98\x2dc67a\x2d45e1\x2db251\x2d6234a7f06f9b.devicesystemd-analyze --user dump|grep getty
Before: run-credentials-getty\x40tty1.service.mount (destination-path)
ReferencedBy: run-credentials-getty\x40tty1.service.mount (destination-path)
Before: run-credentials-getty\x40tty1.service.mount (destination-path)
ReferencedBy: run-credentials-getty\x40tty1.service.mount (destination-path)
→ Unit run-credentials-getty\x40tty1.service.mount:
Description: /run/credentials/getty@tty1.service
Where: /run/credentials/getty@tty1.service
RequiredBy: run-credentials-getty\x40tty1.service.mount (destination-file)
Before: run-credentials-getty\x40tty1.service.mount (destination-file)
ReferencedBy: run-credentials-getty\x40tty1.service.mount (destination-file destination-slice-property)
SliceOf: run-credentials-getty\x40tty1.service.mount (destination-slice-property)systemd-analyze dump getty.target
→ Unit getty.target:
Description: Login Prompts
Instance: n/a
Unit Load State: loaded
Unit Active State: active
State Change Timestamp: Sat 2026-04-18 15:11:46 EEST
Inactive Exit Timestamp: Sat 2026-04-18 15:11:46 EEST
Active Enter Timestamp: Sat 2026-04-18 15:11:46 EEST
Active Exit Timestamp: n/a
Inactive Enter Timestamp: n/a
May GC: no
Need Daemon Reload: no
Transient: no
Perpetual: no
Garbage Collection Mode: inactive
Invocation ID: e57148be8eed412599e24ab4bc29bcd3
Documentation: man:systemd.special(7)
Documentation: man:systemd-getty-generator(8)
Documentation: https://0pointer.de/blog/projects/serial-console.html
Fragment Path: /usr/lib/systemd/system/getty.target
Condition Timestamp: Sat 2026-04-18 15:11:46 EEST
Condition Result: yes
Assert Timestamp: Sat 2026-04-18 15:11:46 EEST
Assert Result: yes
Wants: getty@tty1.service (origin-file)
WantedBy: multi-user.target (destination-file)
Conflicts: shutdown.target (origin-default)
Before: multi-user.target (destination-default)
Before: shutdown.target (origin-default)
After: getty@tty1.service (origin-default destination-file)
References: shutdown.target (origin-default)
References: getty@tty1.service (origin-file origin-default)
ReferencedBy: getty@tty1.service (destination-file)
ReferencedBy: multi-user.target (destination-file destination-default)
StopWhenUnneeded: no
RefuseManualStart: no
RefuseManualStop: no
DefaultDependencies: yes
SurviveFinalKillSignal: no
OnSuccessJobMode: fail
OnFailureJobMode: replace
IgnoreOnIsolate: no
Target State: activesystemd-analyze dump getty-pre.target
→ Unit getty-pre.target:
Description: Preparation for Logins
Instance: n/a
Unit Load State: loaded
Unit Active State: inactive
State Change Timestamp: n/a
Inactive Exit Timestamp: n/a
Active Enter Timestamp: n/a
Active Exit Timestamp: n/a
Inactive Enter Timestamp: n/a
May GC: yes
Need Daemon Reload: no
Transient: no
Perpetual: no
Garbage Collection Mode: inactive
Documentation: man:systemd.special(7)
Documentation: man:systemd-getty-generator(8)
Documentation: https://0pointer.de/blog/projects/serial-console.html
Fragment Path: /usr/lib/systemd/system/getty-pre.target
Conflicts: shutdown.target (origin-default)
Before: shutdown.target (origin-default)
Before: getty@tty1.service (destination-file)
References: shutdown.target (origin-default)
ReferencedBy: getty@tty1.service (destination-file)
StopWhenUnneeded: no
RefuseManualStart: no
RefuseManualStop: no
DefaultDependencies: yes
SurviveFinalKillSignal: no
OnSuccessJobMode: fail
OnFailureJobMode: replace
IgnoreOnIsolate: no
Target State: deadsystemd-analyze dump getty@tty1.service
→ Unit getty@tty1.service:
Alias: autovt@tty1.service
Description: Getty on tty1
Instance: tty1
Unit Load State: loaded
Unit Active State: active
State Change Timestamp: Sat 2026-04-18 15:12:18 EEST
Inactive Exit Timestamp: Sat 2026-04-18 15:11:46 EEST
Active Enter Timestamp: Sat 2026-04-18 15:11:46 EEST
Active Exit Timestamp: n/a
Inactive Enter Timestamp: n/a
May GC: no
Need Daemon Reload: no
Transient: no
Perpetual: no
Garbage Collection Mode: inactive
Slice: system-getty.slice
CGroup: /system.slice/system-getty.slice/getty@tty1.service
CGroup realized mask: memory pids
CGroup own mask: memory pids
Invocation ID: ec20f979081f431aa9cebc193f743c27
Documentation: man:agetty(8)
Documentation: man:systemd-getty-generator(8)
Documentation: https://0pointer.de/blog/projects/serial-console.html
Fragment Path: /usr/lib/systemd/system/getty@.service
ConditionPathExists: /dev/tty0 succeeded
Condition Timestamp: Sat 2026-04-18 15:11:46 EEST
Condition Result: yes
Assert Timestamp: Sat 2026-04-18 15:11:46 EEST
Assert Result: yes
Requires: system-getty.slice (origin-file)
Requires: sysinit.target (origin-default)
WantedBy: getty.target (destination-file)
Conflicts: shutdown.target (origin-default)
Conflicts: rescue.service (origin-file)
Before: rescue.service (origin-file)
Before: getty.target (origin-file destination-default)
Before: shutdown.target (origin-default)
After: getty-pre.target (origin-file)
After: plymouth-quit-wait.service (origin-file)
After: sysinit.target (origin-default)
After: system-getty.slice (origin-file)
After: systemd-user-sessions.service (origin-file)
After: basic.target (origin-default)
References: getty-pre.target (origin-file)
References: systemd-user-sessions.service (origin-file)
References: plymouth-quit-wait.service (origin-file)
References: system-getty.slice (origin-file origin-slice-property)
References: getty.target (origin-file)
References: shutdown.target (origin-default)
References: basic.target (origin-default)
References: rescue.service (origin-file)
References: sysinit.target (origin-default)
ReferencedBy: getty.target (destination-file destination-default)
InSlice: system-getty.slice (origin-slice-property)
StopWhenUnneeded: no
RefuseManualStart: no
RefuseManualStop: no
DefaultDependencies: yes
SurviveFinalKillSignal: no
OnSuccessJobMode: fail
OnFailureJobMode: replace
IgnoreOnIsolate: yes
Service State: running
Result: success
Reload Result: success
Clean Result: success
LiveMount Result: success
PermissionsStartOnly: no
RootDirectoryStartOnly: no
RemainAfterExit: no
GuessMainPID: yes
Type: idle
Restart: always
NotifyAccess: none
NotifyState: (null)
OOMPolicy: stop
ReloadSignal: HUP
Main PID: 877
Main PID Known: yes
Main PID Alien: no
RestartSec: 0
RestartSteps: 0
RestartMaxDelaySec: infinity
TimeoutStartSec: 1min 30s
TimeoutStopSec: 1min 30s
TimeoutStartFailureMode: terminate
TimeoutStopFailureMode: terminate
RuntimeMaxSec: infinity
RuntimeRandomizedExtraSec: 0
WatchdogSec: 0
KillMode: control-group
KillSignal: SIGTERM
RestartKillSignal: SIGTERM
FinalKillSignal: SIGKILL
SendSIGKILL: yes
SendSIGHUP: yes
UMask: 0022
WorkingDirectory: /
RootDirectory: /
RootEphemeral: no
NonBlocking: no
PrivateTmp: no
PrivateDevices: no
ProtectKernelTunables: no
ProtectKernelModules: no
ProtectKernelLogs: no
ProtectClock: no
ProtectControlGroups: no
PrivateNetwork: no
PrivateUsers: no
PrivatePIDs: no
ProtectHome: no
ProtectSystem: no
MountAPIVFS: no
BindLogSockets: no
IgnoreSIGPIPE: no
MemoryDenyWriteExecute: no
RestrictRealtime: no
RestrictSUIDSGID: no
KeyringMode: private
ProtectHostname: no
ProtectProc: default
ProcSubset: all
MemoryTHP: inherit
PrivateBPF: no
UnsetEnvironment: LANG
UnsetEnvironment: LANGUAGE
UnsetEnvironment: LC_CTYPE
UnsetEnvironment: LC_NUMERIC
UnsetEnvironment: LC_TIME
UnsetEnvironment: LC_COLLATE
UnsetEnvironment: LC_MONETARY
UnsetEnvironment: LC_MESSAGES
UnsetEnvironment: LC_PAPER
UnsetEnvironment: LC_NAME
UnsetEnvironment: LC_ADDRESS
UnsetEnvironment: LC_TELEPHONE
UnsetEnvironment: LC_MEASUREMENT
UnsetEnvironment: LC_IDENTIFICATION
RuntimeDirectoryPreserve: no
RuntimeDirectoryMode: 0755
StateDirectoryMode: 0755
CacheDirectoryMode: 0755
LogsDirectoryMode: 0755
ConfigurationDirectoryMode: 0755
TimeoutCleanSec: infinity
LimitNOFILE: 524288
LimitNOFILESoft: 1024
LimitMEMLOCK: 8388608
LimitMEMLOCKSoft: 8388608
StandardInput: tty
StandardOutput: tty
StandardError: inherit
TTYPath: /dev/tty1
TTYReset: yes
TTYVHangup: yes
TTYVTDisallocate: yes
TTYRows: 4294967295
TTYColumns: 4294967295
CapabilityBoundingSet: cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf cap_checkpoint_restore
DynamicUser: no
UtmpIdentifier: tty1
LockPersonality: no
SystemCallErrorNumber: kill
→ ExecStart:
Command Line: /usr/bin/agetty --noreset --noclear - "\${TERM}"
PID: 877
Start Timestamp: Sat 2026-04-18 15:11:46.748439 EEST
Handoff Timestamp: 8.746ms since start
IOAccounting: no
MemoryAccounting: yes
TasksAccounting: yes
IPAccounting: no
CPUWeight: 18446744073709551615
StartupCPUWeight: 18446744073709551615
CPUQuotaPerSecSec: infinity
CPUQuotaPeriodSec: infinity
AllowedCPUs:
StartupAllowedCPUs:
AllowedMemoryNodes:
StartupAllowedMemoryNodes:
IOWeight: 18446744073709551615
StartupIOWeight: 18446744073709551615
MemoryMin: 0
MemoryLow: 0
StartupMemoryLow: 0 (error getting kernel value: Invalid argument)
MemoryHigh: 18446744073709551615
StartupMemoryHigh: 18446744073709551615 (error getting kernel value: Invalid argument)
MemoryMax: 18446744073709551615
StartupMemoryMax: 18446744073709551615 (error getting kernel value: Invalid argument)
MemorySwapMax: 18446744073709551615
StartupMemorySwapMax: 18446744073709551615 (error getting kernel value: Invalid argument)
MemoryZSwapMax: 18446744073709551615
StartupMemoryZSwapMax: 18446744073709551615 (error getting kernel value: Invalid argument)
MemoryZSwapWriteback: yes
TasksMax: 38354
DevicePolicy: auto
DisableControllers:
Delegate: no
ManagedOOMSwap: auto
ManagedOOMMemoryPressure: auto
ManagedOOMMemoryPressureLimit: 0.00%
ManagedOOMPreference: none
MemoryPressureWatch: auto
CoredumpReceive: no
MemoryPressureThresholdSec: 200msEDIT: Somehow managed to miss this one.
systemd-analyze dot 'getty.*' | dot -Tsvg > getty.svg
https://imgur.com/a/tMgQ8zS
Last edited by Namahage (2026-04-18 16:36:11)
Offline
These logs you posted didn't make solution to your problem clearer (at least not for me, sorry).
Did file 'getty.svg' from this command: "systemd-analyze dot 'getty.*' | dot -Tsvg > getty.svg" explain something?
Or maybe this simple command clarify it:
systemctl | grep gettyOffline
Whoops, missed that one. Here's the image:
EDIT: Also this one
systemctl | grep getty (formatting might be a tad off because I had to edit the output because it didn't turn out right when written to a file)
getty@tty1.service
loaded active running Getty on tty1
system-getty.slice
loaded active active Slice /system/getty
getty.target
loaded active active Login PromptsLast edited by Namahage (2026-04-18 16:40:42)
Offline
This looks normal for me. I think it must be something with configuration of xrdp. I don't have nor use it, so I can't help further.
Offline
To clarify, this shows up when signing in locally and this computer is the client, not the host. I may have mistakenly tried some server-side settings on the client because I accessed the server via SSH when I was configuring xrdp and I was working with several terminals at the same time.
I do not need to enter the username and password to each prompt: only the last one is enough. In fact, I can't even do anything to the first two prompts. It's almost like there is just unnecessary stuff printed before the actual login prompt. It also prints /etc/issue before each prompt like this:
(contents of /etc/issue)
hostname login:
(contents of /etc/issue)
hostname login:
(contents of /etc/issue)
hostname login:Last edited by Namahage (2026-04-18 17:02:47)
Offline
Other commands, files you may check to find what you changed:
sudo journalctl -b -g 'spawn|restart|getty|login'
cat /etc/pam.d/login
cat /etc/vconsole.conf
cat /etc/systemd/system/getty.target.wants/getty@tty1.service
cat /usr/lib/systemd/system/getty@.service
loginctl list-sessions
loginctl user-status
systemctl status user.slice
systemctl status systemd-logind.service
systemctl cat systemd-logind.service
systemctl status systemd-vconsole-setup.service
systemctl cat systemd-vconsole-setup.serviceOffline
Does this happen when booting "nomodeset"?
Offline
Does this happen when booting "nomodeset"?
Tested this and it still happens, but this made me realize that up until now I have not actually seen the login prompts being printed one at a time. Display seems to disappear for a brief moment right before getty is started and comes back on after all prompts are already visible. With nomodeset I could see the process happen in its entirety.
As for the output of the other commands, only a notification about vconsole setup seems off. There's a line in journalctl (and systemctl status systemd-vconsole-setup.service) mentioning that "Configuration of first virtual console was skipped, ignoring remaining ones", but it still finishes setup nevertheless. Sounds to me like this could have something to do with the issue.
Apart from that there also seem to be some sort of remnants of my previous XFCE setup still booting in the services although they are nowhere to be seen when trying to check their status or list them with systemctl after login. But this has nothing to do with this getty oddity before logging in so it should not matter in this case, I guess.
sudo journalctl -b -g 'spawn|restart|getty|login'
Apr 19 05:58:16 edellakavija systemd[1]: systemd-journald.service: Scheduled restart job, restart counter is at 1.
Apr 19 05:58:16 edellakavija systemd[1]: Created slice Slice /system/getty.
Apr 19 05:58:18 edellakavija systemd[1]: Starting Notify NFS peers of a restart...
Apr 19 05:58:18 edellakavija systemd[1]: Started Notify NFS peers of a restart.
Apr 19 05:58:18 edellakavija systemd[1]: Listening on User Login Management Varlink Socket.
Apr 19 05:58:18 edellakavija systemd[1]: Starting User Login Management...
Apr 19 05:58:18 edellakavija systemd[1]: Started User Login Management.
Apr 19 05:58:19 edellakavija systemd[1]: Started Getty on tty1.
Apr 19 05:58:19 edellakavija systemd[1]: Reached target Login Prompts.
Apr 19 05:58:38 edellakavija login[890]: pam_unix(login:session): session opened for user johannes(uid=1000) by johannes(uid=0)
Apr 19 05:58:38 edellakavija login[890]: LOGIN ON tty1 BY johannes
Apr 19 05:58:40 edellakavija rtkit-daemon[1132]: Handling system-suspend using logind./etc/pam.d/login
#%PAM-1.0
auth requisite pam_nologin.so
auth include system-local-login
account include system-local-login
session include system-local-login
password include system-local-login/etc/vconsole.conf
# Written by systemd-localed(8) or systemd-firstboot(1), read by systemd-localed
# and systemd-vconsole-setup(8). Use localectl(1) to update this file.
KEYMAP=fi
XKBLAYOUT=fi/etc/systemd/system/getty.target.wants/getty@tty1.service
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Getty on %I
Documentation=man:agetty(8) man:systemd-getty-generator(8)
Documentation=https://0pointer.de/blog/projects/serial-console.html
After=systemd-user-sessions.service plymouth-quit-wait.service getty-pre.target
# If additional gettys are spawned during boot then we should make
# sure that this is synchronized before getty.target, even though
# getty.target didn't actually pull it in.
Before=getty.target
IgnoreOnIsolate=yes
# IgnoreOnIsolate causes issues with sulogin, if someone isolates
# rescue.target or starts rescue.service from multi-user.target or
# graphical.target.
Conflicts=rescue.service
Before=rescue.service
# On systems without virtual consoles, don't start any getty. Note
# that serial gettys are covered by serial-getty@.service, not this
# unit.
ConditionPathExists=/dev/tty0
[Service]
ExecStart=-/usr/bin/agetty --noreset --noclear - ${TERM}
Type=idle
Restart=always
RestartSec=0
UtmpIdentifier=%I
StandardInput=tty
StandardOutput=tty
TTYPath=/dev/%I
TTYReset=yes
TTYVHangup=yes
TTYVTDisallocate=yes
IgnoreSIGPIPE=no
SendSIGHUP=yes
ImportCredential=tty.virtual.%I.agetty.*:agetty.
ImportCredential=tty.virtual.%I.login.*:login.
ImportCredential=agetty.*
ImportCredential=login.*
ImportCredential=shell.*
# Unset locale for the console getty since the console has problems
# displaying some internationalized messages.
UnsetEnvironment=LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION
[Install]
Alias=autovt@.service
WantedBy=getty.target
DefaultInstance=tty1/usr/lib/systemd/system/getty@.service
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Getty on %I
Documentation=man:agetty(8) man:systemd-getty-generator(8)
Documentation=https://0pointer.de/blog/projects/serial-console.html
After=systemd-user-sessions.service plymouth-quit-wait.service getty-pre.target
# If additional gettys are spawned during boot then we should make
# sure that this is synchronized before getty.target, even though
# getty.target didn't actually pull it in.
Before=getty.target
IgnoreOnIsolate=yes
# IgnoreOnIsolate causes issues with sulogin, if someone isolates
# rescue.target or starts rescue.service from multi-user.target or
# graphical.target.
Conflicts=rescue.service
Before=rescue.service
# On systems without virtual consoles, don't start any getty. Note
# that serial gettys are covered by serial-getty@.service, not this
# unit.
ConditionPathExists=/dev/tty0
[Service]
ExecStart=-/usr/bin/agetty --noreset --noclear - ${TERM}
Type=idle
Restart=always
RestartSec=0
UtmpIdentifier=%I
StandardInput=tty
StandardOutput=tty
TTYPath=/dev/%I
TTYReset=yes
TTYVHangup=yes
TTYVTDisallocate=yes
IgnoreSIGPIPE=no
SendSIGHUP=yes
ImportCredential=tty.virtual.%I.agetty.*:agetty.
ImportCredential=tty.virtual.%I.login.*:login.
ImportCredential=agetty.*
ImportCredential=login.*
ImportCredential=shell.*
# Unset locale for the console getty since the console has problems
# displaying some internationalized messages.
UnsetEnvironment=LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION
[Install]
Alias=autovt@.service
WantedBy=getty.target
DefaultInstance=tty1loginctl list-sessions
SESSION UID USER SEAT LEADER CLASS TTY IDLE SINCE
1 1000 johannes seat0 890 user tty1 no -
2 1000 johannes - 927 manager - no -
2 sessions listed.systemctl cat systemd-logind.service
# /usr/lib/systemd/system/systemd-logind.service
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=User Login Management
Documentation=man:sd-login(3)
Documentation=man:systemd-logind.service(8)
Documentation=man:logind.conf(5)
Documentation=man:org.freedesktop.login1(5)
Wants=user.slice modprobe@drm.service
After=nss-user-lookup.target user.slice modprobe@drm.service
# Ask for the dbus socket.
Wants=dbus.socket
After=dbus.socket
[Service]
BusName=org.freedesktop.login1
CapabilityBoundingSet=CAP_SYS_ADMIN CAP_MAC_ADMIN CAP_AUDIT_CONTROL CAP_CHOWN CAP_DAC_READ_SEARCH CAP_DAC_OVERRIDE CAP_FOWNER CAP_SYS_TTY_CONFIG CAP_LINUX_IMMUTABLE
DeviceAllow=block-* r
DeviceAllow=char-/dev/console rw
DeviceAllow=char-drm rw
DeviceAllow=char-hidraw rw
DeviceAllow=char-hvc rw
DeviceAllow=char-input rw
DeviceAllow=char-tty rw
DeviceAllow=char-vcs rw
ExecStart=/usr/lib/systemd/systemd-logind
FileDescriptorStoreMax=768
IPAddressDeny=any
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes
PrivateTmp=yes
# We don't use ProtectProc= since we need to look for usernames and tty for wall messages
ProtectClock=yes
ProtectControlGroups=yes
ProtectHome=yes
ProtectHostname=yes
ProtectKernelLogs=yes
ProtectKernelModules=yes
ProtectSystem=strict
ReadWritePaths=/etc /run
Restart=always
RestartSec=0
RestrictAddressFamilies=AF_UNIX AF_NETLINK
RestrictNamespaces=yes
RestrictRealtime=yes
RestrictSUIDSGID=yes
RuntimeDirectory=systemd/sessions systemd/seats systemd/users systemd/inhibit systemd/shutdown
RuntimeDirectoryPreserve=yes
StateDirectory=systemd/linger
SystemCallArchitectures=native
SystemCallErrorNumber=EPERM
SystemCallFilter=@system-service
Type=notify-reload
WatchdogSec=3min
# Increase the default a bit in order to allow many simultaneous logins since
# we keep one fd open per session.
LimitNOFILE=524288systemctl status systemd-vconsole-setup.service
● systemd-vconsole-setup.service - Virtual Console Setup
Loaded: loaded (/usr/lib/systemd/system/systemd-vconsole-setup.service; static)
Active: active (exited) since Sun 2026-04-19 05:58:20 EEST; 4h 7min ago
Invocation: 90c38641cc684fc4a2fb9c867026090f
Docs: man:systemd-vconsole-setup.service(8)
man:vconsole.conf(5)
Process: 892 ExecStart=/usr/lib/systemd/systemd-vconsole-setup (code=exited, status=0/SUCCESS)
Main PID: 892 (code=exited, status=0/SUCCESS)
Mem peak: 2.5M
CPU: 11ms
Apr 19 05:58:19 edellakavija systemd[1]: Starting Virtual Console Setup...
Apr 19 05:58:20 edellakavija systemd-vconsole-setup[892]: Configuration of first virtual console was skipped, ignoring remaining ones.
Apr 19 05:58:20 edellakavija systemd[1]: Finished Virtual Console Setup.systemctl cat systemd-vconsole-setup.service
# /usr/lib/systemd/system/systemd-vconsole-setup.service
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Virtual Console Setup
Documentation=man:systemd-vconsole-setup.service(8) man:vconsole.conf(5)
ConditionPathExists=/dev/tty0
DefaultDependencies=no
Before=sysinit.target
Before=initrd-switch-root.target shutdown.target
# This unit will be restarted by udev whenever a new vtcon device appears or is
# triggered. Usually that happens just a handful of times during boot, but some
# systems may have hundreds or thousands of serial consoles connected, so let's
# just disable the limit altogether.
StartLimitIntervalSec=0
[Service]
Type=oneshot
# This service will be restarted by udev whenever a new vtcon device appears.
# If the previous instance is still running, it shall be interrupted without
# error.
SuccessExitStatus=SIGTERM
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-vconsole-setup
ImportCredential=vconsole.*loginctl user-status
johannes (1000)
Since: Sun 2026-04-19 10:33:47 EEST; 28s ago
State: active
Sessions: 2 *1
Linger: no
Unit: user-1000.slice
├─session-1.scope
│ ├─ 859 "login -- johannes"
│ ├─ 901 start-hyprland
│ ├─ 934 Hyprland --watchdog-fd 4
│ ├─1007 /bin/sh -c "waybar & hyprpaper & fcitx5"
│ ├─1009 python3 /home/johannes/Asiakirjat/skriptit/python/boot.py
│ ├─1010 waybar
│ ├─1011 hyprpaper
│ ├─1012 fcitx5
│ ├─1024 Xwayland :0 -rootless -core -listenfd 50 -listenfd 51 -displayfd 103 -wm 100
│ ├─1143 bwrap --unshare-all --die-with-parent --chdir / --ro-bind /usr /usr --dev /dev --ro-bind-try /etc/ld.so.cache /etc/ld.so.cache --ro-bind-try /nix/store /nix/store --tmpfs /tmp-home --tmpfs /tmp-run --clearenv --setenv HOME /tmp-home --setenv XDG_RUNTIME_DIR /tmp-run --setenv XDG_RUNTIME_DIR /run/user/1000 --symlink /usr/lib /lib64 --symlink /usr/lib /lib --ro-bind-try /etc/fonts/conf.d /etc/fonts/conf.d --ro-bind-try /etc/fonts/fonts.conf /etc/fonts/fonts.conf --ro-bind-try /home/johannes/.cache/fontconfig /home/johannes/.cache/fontconfig --ro-bind-try /var/cache/fontconfig /var/cache/fontconfig --bind-try /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --setenv XDG_CACHE_HOME /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --seccomp 51 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 50
│ ├─1144 bwrap --unshare-all --die-with-parent --chdir / --ro-bind /usr /usr --dev /dev --ro-bind-try /etc/ld.so.cache /etc/ld.so.cache --ro-bind-try /nix/store /nix/store --tmpfs /tmp-home --tmpfs /tmp-run --clearenv --setenv HOME /tmp-home --setenv XDG_RUNTIME_DIR /tmp-run --setenv XDG_RUNTIME_DIR /run/user/1000 --symlink /usr/lib /lib64 --symlink /usr/lib /lib --ro-bind-try /etc/fonts/conf.d /etc/fonts/conf.d --ro-bind-try /etc/fonts/fonts.conf /etc/fonts/fonts.conf --ro-bind-try /home/johannes/.cache/fontconfig /home/johannes/.cache/fontconfig --ro-bind-try /var/cache/fontconfig /var/cache/fontconfig --bind-try /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --setenv XDG_CACHE_HOME /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --seccomp 51 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 50
│ ├─1145 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 50
│ ├─1204 /usr/lib/mozc/mozc_server
│ ├─1256 alacritty
│ ├─1274 /usr/bin/bash
│ └─1278 loginctl user-status
└─user@1000.service
├─app.slice
│ ├─app-dbus\x2d:1.9\x2dorg.a11y.atspi.Registry.slice
│ │ └─dbus-:1.9-org.a11y.atspi.Registry@0.service
│ │ └─1083 /usr/lib/at-spi2-registryd --use-gnome-session
│ ├─dconf.service
│ │ └─998 /usr/lib/dconf-service
│ ├─xfce4-notifyd.service
│ │ ├─1211 /usr/lib/xfce4/notifyd/xfce4-notifyd
│ │ ├─1232 bwrap --unshare-all --die-with-parent --chdir / --ro-bind /usr /usr --dev /dev --ro-bind-try /etc/ld.so.cache /etc/ld.so.cache --ro-bind-try /nix/store /nix/store --tmpfs /tmp-home --tmpfs /tmp-run --clearenv --setenv HOME /tmp-home --setenv XDG_RUNTIME_DIR /tmp-run --setenv XDG_RUNTIME_DIR /run/user/1000 --symlink /usr/lib /lib64 --symlink /usr/lib /lib --ro-bind-try /etc/fonts/conf.d /etc/fonts/conf.d --ro-bind-try /etc/fonts/fonts.conf /etc/fonts/fonts.conf --ro-bind-try /home/johannes/.cache/fontconfig /home/johannes/.cache/fontconfig --ro-bind-try /var/cache/fontconfig /var/cache/fontconfig --bind-try /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --setenv XDG_CACHE_HOME /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --seccomp 23 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 22
│ │ ├─1233 bwrap --unshare-all --die-with-parent --chdir / --ro-bind /usr /usr --dev /dev --ro-bind-try /etc/ld.so.cache /etc/ld.so.cache --ro-bind-try /nix/store /nix/store --tmpfs /tmp-home --tmpfs /tmp-run --clearenv --setenv HOME /tmp-home --setenv XDG_RUNTIME_DIR /tmp-run --setenv XDG_RUNTIME_DIR /run/user/1000 --symlink /usr/lib /lib64 --symlink /usr/lib /lib --ro-bind-try /etc/fonts/conf.d /etc/fonts/conf.d --ro-bind-try /etc/fonts/fonts.conf /etc/fonts/fonts.conf --ro-bind-try /home/johannes/.cache/fontconfig /home/johannes/.cache/fontconfig --ro-bind-try /var/cache/fontconfig /var/cache/fontconfig --bind-try /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --setenv XDG_CACHE_HOME /home/johannes/.cache/glycin/usr/lib/glycin-loaders/2+/glycin-svg --seccomp 23 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 22
│ │ └─1234 /usr/lib/glycin-loaders/2+/glycin-svg --dbus-fd 22
│ └─xfconfd.service
│ └─1215 /usr/lib/xfce4/xfconf/xfconfd
├─init.scope
│ ├─893 /usr/lib/systemd/systemd --user
│ └─895 "(sd-pam)"
└─session.slice
├─at-spi-dbus-bus.service
│ ├─1026 /usr/lib/at-spi-bus-launcher
│ ├─1058 /usr/bin/dbus-broker-launch --config-file=/usr/share/defaults/at-spi2/accessibility.conf --scope user
│ └─1059 dbus-broker --log 10 --controller 9 --machine-id cd74da6d39ad4ee5bdfcf64ef55c477e --max-bytes 100000000000000 --max-fds 6400000 --max-matches 5000000000
├─dbus-broker.service
│ ├─995 /usr/bin/dbus-broker-launch --scope user
│ └─996 dbus-broker --log 11 --controller 10 --machine-id cd74da6d39ad4ee5bdfcf64ef55c477e --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000
├─gvfs-daemon.service
│ ├─1064 /usr/lib/gvfsd
│ └─1071 /usr/lib/gvfsd-fuse /run/user/1000/gvfs -f
├─gvfs-metadata.service
│ └─1166 /usr/lib/gvfsd-metadata
└─pulseaudio.service
├─1088 /usr/bin/pulseaudio --daemonize=no --log-target=journal
└─1129 /usr/lib/pulse/gsettings-helper
Apr 19 10:33:49 edellakavija systemd[893]: Started dbus-:1.9-org.a11y.atspi.Registry@0.service.
Apr 19 10:33:49 edellakavija systemd[893]: Starting Sound Service...
Apr 19 10:33:49 edellakavija at-spi2-registryd[1083]: SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
Apr 19 10:33:49 edellakavija systemd[893]: Started Sound Service.
Apr 19 10:33:50 edellakavija systemd[893]: Starting Virtual filesystem metadata service...
Apr 19 10:33:50 edellakavija systemd[893]: Started Virtual filesystem metadata service.
Apr 19 10:33:56 edellakavija systemd[893]: Starting XFCE notifications service...
Apr 19 10:33:56 edellakavija systemd[893]: Starting Xfce configuration service...
Apr 19 10:33:56 edellakavija systemd[893]: Started Xfce configuration service.
Apr 19 10:33:56 edellakavija systemd[893]: Started XFCE notifications service.systemctl status user.slice
● user.slice - User and Session Slice
Loaded: loaded (/usr/lib/systemd/system/user.slice; static)
Active: active since Sun 2026-04-19 10:33:29 EEST; 2min 38s ago
Invocation: b88f7e9b1a8446068a3f21c72ca636bf
Docs: man:systemd.special(7)
Act. Units: 4
Tasks: 173
Memory: 464.7M (peak: 465.2M)
CPU: 2.831s
CGroup: /user.slice
└─user-1000.slice
├─session-1.scope
│ ├─ 859 "login -- johannes"
│ ├─ 901 start-hyprland
│ ├─ 934 Hyprland --watchdog-fd 4
│ ├─1007 /bin/sh -c "waybar & hyprpaper & fcitx5"
│ ├─1009 python3 /home/johannes/Asiakirjat/skriptit/python/boot.py
│ ├─1010 waybar
│ ├─1011 hyprpaper
│ ├─1012 fcitx5
│ ├─1024 Xwayland :0 -rootless -core -listenfd 50 -listenfd 51 -displayfd 103 -wm 100
│ ├─1204 /usr/lib/mozc/mozc_server
│ ├─1256 alacritty
│ ├─1274 /usr/bin/bash
│ └─1289 systemctl status user.slice
└─user@1000.service
├─app.slice
│ ├─app-dbus\x2d:1.9\x2dorg.a11y.atspi.Registry.slice
│ │ └─dbus-:1.9-org.a11y.atspi.Registry@0.service
│ │ └─1083 /usr/lib/at-spi2-registryd --use-gnome-session
│ ├─dconf.service
│ │ └─998 /usr/lib/dconf-service
│ ├─xfce4-notifyd.service
│ │ └─1211 /usr/lib/xfce4/notifyd/xfce4-notifyd
│ └─xfconfd.service
│ └─1215 /usr/lib/xfce4/xfconf/xfconfd
├─init.scope
│ ├─893 /usr/lib/systemd/systemd --user
│ └─895 "(sd-pam)"
└─session.slice
├─at-spi-dbus-bus.service
│ ├─1026 /usr/lib/at-spi-bus-launcher
│ ├─1058 /usr/bin/dbus-broker-launch --config-file=/usr/share/defaults/at-spi2/accessibility.conf --scope user
│ └─1059 dbus-broker --log 10 --controller 9 --machine-id cd74da6d39ad4ee5bdfcf64ef55c477e --max-bytes 100000000000000 --max-fds 6400000 --max-matches 5000000000
├─dbus-broker.service
│ ├─995 /usr/bin/dbus-broker-launch --scope user
│ └─996 dbus-broker --log 11 --controller 10 --machine-id cd74da6d39ad4ee5bdfcf64ef55c477e --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000
├─gvfs-daemon.service
│ ├─1064 /usr/lib/gvfsd
│ └─1071 /usr/lib/gvfsd-fuse /run/user/1000/gvfs -f
├─gvfs-metadata.service
│ └─1166 /usr/lib/gvfsd-metadata
└─pulseaudio.service
├─1088 /usr/bin/pulseaudio --daemonize=no --log-target=journal
└─1129 /usr/lib/pulse/gsettings-helpersystemctl status systemd-logind.service
● systemd-logind.service - User Login Management
Loaded: loaded (/usr/lib/systemd/system/systemd-logind.service; static)
Active: active (running) since Sun 2026-04-19 10:33:32 EEST; 3min 6s ago
Invocation: 4a7df6da79f54f62a716cf2410f20735
TriggeredBy: ● systemd-logind-varlink.socket
Docs: man:sd-login(3)
man:systemd-logind.service(8)
man:logind.conf(5)
man:org.freedesktop.login1(5)
Main PID: 796 (systemd-logind)
Status: "Processing requests..."
Tasks: 1 (limit: 38354)
FD Store: 9 (limit: 768)
Memory: 2.6M (peak: 7.4M)
CPU: 72ms
CGroup: /system.slice/systemd-logind.service
└─796 /usr/lib/systemd/systemd-logind
Apr 19 10:33:31 edellakavija systemd[1]: Starting User Login Management...
Apr 19 10:33:32 edellakavija systemd-logind[796]: New seat seat0.
Apr 19 10:33:32 edellakavija systemd-logind[796]: Watching system buttons on /dev/input/event1 (Power Button)
Apr 19 10:33:32 edellakavija systemd-logind[796]: Watching system buttons on /dev/input/event0 (Power Button)
Apr 19 10:33:32 edellakavija systemd-logind[796]: Watching system buttons on /dev/input/event4 (Corsair Corsair M65 Gaming Mouse)
Apr 19 10:33:32 edellakavija systemd-logind[796]: Watching system buttons on /dev/input/event5 (Corsair Corsair M65 Gaming Mouse)
Apr 19 10:33:32 edellakavija systemd-logind[796]: Watching system buttons on /dev/input/event2 (AT Translated Set 2 keyboard)
Apr 19 10:33:32 edellakavija systemd[1]: Started User Login Management.
Apr 19 10:33:47 edellakavija systemd-logind[796]: New session '1' of user 'johannes' with class 'user' and type 'tty'.
Apr 19 10:33:47 edellakavija systemd-logind[796]: New session '2' of user 'johannes' with class 'manager' and type 'unspecified'.Offline
Please post your complete system journal for the boot:
sudo journalctl -b | curl -s -H "Accept: application/json, */*" --upload-file - 'https://paste.c-net.org/'Everything pam, logind etc. is after the getty, the only thing relevant are the vonsole setup messages and starting getty - I somewhat suspect that it has to do w/ the systemd initramfs, but
Ever since troubleshooting a problem setting up a connection over xrdp
Anything from https://wiki.archlinux.org/title/Xrdp#Autostart_at_boot specifically? Is the xrdp service still enabled?
Offline
Anything from https://wiki.archlinux.org/title/Xrdp#Autostart_at_boot specifically? Is the xrdp service still enabled?
I can't find anything related to xrdp running or even installed on this computer. It was only the client so if there would be anything running or installed in the first place it would be a mistake. No xrdp service running and none of the configuration files exist.
I also set up an NFS share around the same time in case something related to NFS could be causing this. The NFS share is not used 24/7 so it's not included in fstab or anywhere else (mounted and unmounted by a script when needed). This computer is the one connecting to the NFS share, not the one sharing it.
Here is the full boot log: https://paste.c-net.org/PlatinumDeluca
I have noticed that the timing of the two login prompts after the first one always matches activity on the NIC. The first prompt's time always matches with getty starting. In this boot log's case these two:
Apr 20 05:32:41 edellakavija systemd-networkd[657]: enp42s0: Gained carrier
...
Apr 20 05:32:42 edellakavija systemd-networkd[657]: enp42s0: Gained IPv6LLCould it be caused by strange network settings? Just coincidence? I fiddled a lot with network settings.
Last edited by Namahage (2026-04-20 02:45:44)
Offline
It would seem I see the same thing for a few weeks: sometimes three, sometimes four repeats of issue and prompt at first tty at boot.
I cannot think of anything I changed, even /etc/issue, but defaulting /etc/issue (by 'rm' in my case) or simplifying it seems to prevent the issue.
In case it can help another, my custom /etc/issue is much like this one but without the network codes: https://bbs.archlinux.org/viewtopic.php … 8#p1892338
Last edited by espresso (2026-04-20 04:03:36)
Capitalism's power seems inescapable, but then so did the divine right of kings. ― Ursula LeGuin
Offline
Apr 20 05:32:28 archlinux kernel: Console: colour dummy device 80x25
Apr 20 05:32:28 archlinux kernel: printk: legacy console [tty0] enabled
…
Apr 20 05:32:29 archlinux systemd[1]: Starting Virtual Console Setup...
Apr 20 05:32:29 archlinux kernel: nvme nvme0: pci function 0000:04:00.0
Apr 20 05:32:29 archlinux systemd-vconsole-setup[329]: Configuration of first virtual console was skipped, ignoring remaining ones.
…
Apr 20 05:32:30 archlinux systemd[1]: systemd-vconsole-setup.service: Deactivated successfully.
Apr 20 05:32:30 archlinux systemd[1]: Stopped Virtual Console Setup.
…
Apr 20 05:32:34 archlinux kernel: fbcon: amdgpudrmfb (fb0) is primary device
Apr 20 05:32:34 archlinux kernel: fbcon: Deferring console take-over
Apr 20 05:32:34 archlinux kernel: amdgpu 0000:2d:00.0: [drm] fb0: amdgpudrmfb frame buffer device
…
Apr 20 05:32:35 edellakavija systemd[1]: Finished Remount Root and Kernel File Systems.
…
Apr 20 05:32:37 edellakavija systemd[1]: Starting Virtual Console Setup...
…
Apr 20 05:32:38 edellakavija systemd[1]: Started Getty on tty1.
Apr 20 05:32:38 edellakavija systemd[1]: Reached target Login Prompts.
Apr 20 05:32:38 edellakavija systemd[1]: Reached target Multi-User System.
Apr 20 05:32:38 edellakavija systemd[1]: Reached target Graphical Interface.
Apr 20 05:32:38 edellakavija kernel: fbcon: Taking over console
Apr 20 05:32:38 edellakavija kernel: [drm] pre_validate_dsc:1667 MST_DSC dsc precompute is not needed
Apr 20 05:32:38 edellakavija kernel: Console: switching to colour frame buffer device 240x67
Apr 20 05:32:38 edellakavija systemd-vconsole-setup[866]: Configuration of first virtual console was skipped, ignoring remaining ones.
Apr 20 05:32:38 edellakavija systemd[1]: Finished Virtual Console Setup.
…
Apr 20 05:32:41 edellakavija systemd-networkd[657]: enp42s0: Gained carrier
Apr 20 05:32:41 edellakavija kernel: r8169 0000:2a:00.0 enp42s0: Link is Up - 1Gbps/Full - flow control rx/tx
Apr 20 05:32:41 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=27535 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 20 05:32:42 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=27835 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 20 05:32:42 edellakavija kernel: [UFW BLOCK] IN=enp42s0 OUT= MAC= SRC=10.10.91.2 DST=224.0.0.252 LEN=58 TOS=0x00 PREC=0x00 TTL=255 ID=28061 PROTO=UDP SPT=5355 DPT=5355 LEN=38
Apr 20 05:32:42 edellakavija systemd-networkd[657]: enp42s0: Gained IPv6LLHow long is the gap between the two prompts? 3+ seconds?
It's more likely an artifact of systemd-vconsole-setup in the initramfs, you could try to replace systemd w/ busybox (the previous default) and see whether this disappears, https://wiki.archlinux.org/title/Mkinitcpio#Hook_list
Offline
It would seem I see the same thing for a few weeks: sometimes three, sometimes four repeats of issue and prompt at first tty at boot.
I cannot think of anything I changed, even /etc/issue, but defaulting /etc/issue (by 'rm' in my case) or simplifying it seems to prevent the issue.
This actually did it for me too. Thank you.
I removed the line I have added myself and left only the line that belongs to the default /etc/issue and it worked right away. I haven't touched /etc/issue for God knows how long, but this problem only emerged a few weeks ago. Perhaps some recent update has changed how /etc/issue is handled or something?
How long is the gap between the two prompts? 3+ seconds?
Problem already solved, but for the sake of documentation: the three login prompts that I saw when creating that boot log had timestamps 05:32:38, 05:32:41 and 05:32:42.
Offline
\o/
Please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.
Offline