Bug 1363858

Summary: No tty on vt1 since change to systemd scriptlets to run 'systemctl preset-all' instead of specific preset commands
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: systemdAssignee: systemd-maint
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: rawhideCC: bugzilla, johannbg, lnykryn, msekleta, muadda, robatino, ssahani, s, systemd-maint, zbyszek
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: systemd-231-4.fc25 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-09-06 18:22:35 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:
Bug Depends On:    
Bug Blocks: 1277285, 1277287    

Description Adam Williamson 2016-08-03 18:03:21 UTC
Since this systemd package change:

http://pkgs.fedoraproject.org/cgit/rpms/systemd.git/commit/?id=46083abe1a4de3328d84e4a32ee22c78ac414b03

Fresh F25 and Rawhide installs have no tty on vt1. This is because /etc/systemd/system/getty.target.wants/getty does not exist.

Note this, starting from a 2016-07-24 install that used the old scriptlets:

[root@localhost system]# systemctl preset-all
...
Removed /etc/systemd/system/getty.target.wants/getty.

But:

[root@localhost system]# systemctl preset getty@.service
Created symlink /etc/systemd/system/getty.target.wants/getty → /usr/lib/systemd/system/getty@.service.

So for some reason running 'systemctl preset-all' results in no getty.target.wants/getty , but running 'systemctl preset getty@.service' - which is what the old scriptlet did - results in getty.target.wants/getty being created.

This is a clear Beta blocker: "A system installed without a graphical package set must boot to a working login prompt without any unintended user intervention, and all virtual consoles intended to provide a working login prompt must do so." - https://fedoraproject.org/wiki/Fedora_25_Beta_Release_Criteria#Expected_installed_system_boot_behavior

Comment 1 Adam Williamson 2016-08-03 18:08:36 UTC
Note preset-all does lots of other suspiciously incorrect-looking stuff, when run from a 2016-07-24 install:

[root@localhost system]# systemctl preset-all
Removed /etc/systemd/system/syslog.service.
Removed /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
Removed /etc/systemd/system/multi-user.target.wants/rolekit.service.
Removed /etc/systemd/system/multi-user.target.wants/nfs-client.target.
Removed /etc/systemd/system/multi-user.target.wants/rsyslog.service.
Removed /etc/systemd/system/getty.target.wants/getty.
Removed /etc/systemd/system/basic.target.wants/firewalld.service.
Removed /etc/systemd/system/sockets.target.wants/rpcbind.socket.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service.
Removed /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.rolekit1.service.
Removed /etc/systemd/system/remote-fs.target.wants/nfs-client.target.
Removed /etc/systemd/system/dbus-org.freedesktop.timedate1.service.
Removed /etc/systemd/system/default.target.

Comment 2 Adam Williamson 2016-08-03 18:26:50 UTC
To be clear, preset-all shouldn't be doing a lot of those things, according to /usr/lib/systemd/system/90-default.preset and /usr/lib/systemd/system/90-systemd.preset - those say that firewalld and rolekit and nfs-client and getty@tty1 should be enabled and so on. I think preset-all is flat out broken.

This bug is why most openQA tests are failing lately.

Comment 3 Adam Williamson 2016-08-03 18:40:57 UTC
Possibly related upstream issues:

https://github.com/systemd/systemd/issues/3616
https://github.com/systemd/systemd/issues/2513

As this is breaking openQA and clearly behaving wrong, I've reverted the change (going back to the old explicit 'systemctl preset' calls) for F25 and Rawhide until systemd folks can look at fixing preset-all to actually work right. 231-3 will have the change reverted.

Comment 4 Adam Williamson 2016-08-05 20:05:53 UTC
The reversion seems to have worked, so closing this...please don't re-apply the change without fixing the behaviour of preset-all...

Comment 5 Fedora Update System 2016-09-01 15:32:24 UTC
systemd-231-4.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2016-c1271b0fee

Comment 6 Fedora Update System 2016-09-03 03:54:53 UTC
systemd-231-4.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-c1271b0fee

Comment 7 Fedora Update System 2016-09-06 18:22:26 UTC
systemd-231-4.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.