Bug 1737217

Summary: systemd-logind is unable to start terminals after latest updates.
Product: [Fedora] Fedora Reporter: stan <gryt2>
Component: systemdAssignee: systemd-maint
Status: CLOSED WORKSFORME QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gryt2, lnykryn, msekleta, ssahani, s, systemd-maint, yellowhat46, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-08 13:18:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description stan 2019-08-04 05:07:16 UTC
Description of problem:
I boot to multiuser.  But systemd-logind is unable to start so there is only tty1 available instead of the nine I usually create.

Version-Release number of selected component (if applicable):
Name        : systemd
Version     : 243~rc1
Release     : 1.fc31
Architecture: x86_64


How reproducible:
every boot


Steps to Reproduce:
1.  Set booting to multiuser
2.  Install latest updates from rawhide
3.  Reboot

Actual results:
# systemctl status systemd-logind.service
● systemd-logind.service - Login Service
   Loaded: loaded (/usr/lib/systemd/system/systemd-logind.service; static; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/systemd-logind.service.d
           └─nss_nis.conf
   Active: failed (Result: exit-code) since Sat 2019-08-03 21:49:11 MST; 3min 0s ago
     Docs: man:systemd-logind.service(8)
           man:logind.conf(5)
           https://www.freedesktop.org/wiki/Software/systemd/logind
           https://www.freedesktop.org/wiki/Software/systemd/multiseat
  Process: 1359 ExecStartPre=/sbin/modprobe -abq drm (code=exited, status=238)
  Process: 1360 ExecStart=/usr/lib/systemd/systemd-logind (code=exited, status=238)
 Main PID: 1360 (code=exited, status=238)

Aug 03 21:49:11 localhost.localdomain systemd[1]: Starting Login Service...
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Main process exited, code=exited, status=238/n/a
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Failed with result 'exit-code'.
Aug 03 21:49:11 localhost.localdomain systemd[1]: Failed to start Login Service.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Service has no hold-off time (RestartSec=0), scheduling restart.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Scheduled restart job, restart counter is at 5.
Aug 03 21:49:11 localhost.localdomain systemd[1]: Stopped Login Service.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Start request repeated too quickly.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Failed with result 'exit-code'.
Aug 03 21:49:11 localhost.localdomain systemd[1]: Failed to start Login Service.


Expected results:
multiuser starts with terminals enabled.

Additional info:
There were a *lot* of updates today (thousands of packages).  Logging in is taking a long time to process the password.

When I run systemctl start systemd-logind from X, an abrt message shows up after the failure, but when I try to see it, it just sits for a while and exits. Because of the permission problem shown below, I suspect this might be an SELinux problem.

From journalctl -r

Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Failed with result 'exit-code'.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Start request repeated too quickly.
Aug 03 21:49:11 localhost.localdomain systemd[1]: Stopped Login Service.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Scheduled restart job, restart counter is at 5.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Service has no hold-off time (RestartSec=0), scheduling restart.
Aug 03 21:49:11 localhost.localdomain systemd[1]: Failed to start Login Service.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Failed with result 'exit-code'.
Aug 03 21:49:11 localhost.localdomain systemd[1]: systemd-logind.service: Main process exited, code=exited, status=238/n/a
Aug 03 21:49:11 localhost.localdomain systemd[1360]: systemd-logind.service: Failed at step (null) spawning /usr/lib/systemd/systemd-logind: Permission denied
Aug 03 21:49:11 localhost.localdomain systemd[1360]: systemd-logind.service: Failed to set up special execution directory in /var/lib: Permission denied
Aug 03 21:49:11 localhost.localdomain systemd[1359]: systemd-logind.service: Failed at step (null) spawning /sbin/modprobe: Permission denied
Aug 03 21:49:11 localhost.localdomain systemd[1359]: systemd-logind.service: Failed to set up special execution directory in /var/lib: Permission denied
Aug 03 21:49:11 localhost.localdomain systemd[1]: Starting Login Service...

Comment 1 stan 2019-08-04 13:38:48 UTC
So, I tried
setenforce 0
and I can then successfully run
systemctl restart systemd-logind

This appears to be a mismatch between systemd and selinux.

Comment 2 Vasco Gervasi 2019-08-05 05:32:29 UTC
Hi,
I can confirm that I get the exactly same errors.
Setting SELinux to Permissive worked for me.

Thanks

Comment 3 stan 2019-08-08 13:18:56 UTC
After latest updates, this problem has disappeared.