summaryrefslogtreecommitdiff
path: root/units/system-update-cleanup.service.in
Commit message (Collapse)AuthorAgeFilesLines
* unit,meson: drop .in suffix if no substitution is required (#8740)Yu Watanabe2018-04-171-35/+0
|
* units: Fix SuccessAction that belongs to [Unit] section not [Service] ↵Karol Augustin2018-03-181-1/+1
| | | | section (#8478)
* units: use SuccessAction=reboot where appropriate (#8335)Lennart Poettering2018-03-021-1/+1
| | | We should really use our own native concepts for rebooting.
* Add SPDX license headers to unit filesZbigniew Jędrzejewski-Szmek2017-11-191-0/+2
|
* units: add missing Before=shutdown.target for units which it ConflictsAlan Jenkins2017-09-301-0/+1
| | | | | | | There's a few services missing this ordering. Also remove a duplicate Conflicts=shutdown.target from systemd-volatile-root.service.
* units: add system-update-cleanup.service to guard against offline-update loopsZbigniew Jędrzejewski-Szmek2016-11-291-0/+32
Note: the name is "system-update-cleanup.service" rather than "system-update-done.service", because it should not run normally, and also because there's already "systemd-update-done.service", and having them named so similarly would be confusing. In https://bugzilla.redhat.com/show_bug.cgi?id=1395686 the system repeatedly entered system-update.target on boot. Because of a packaging issue, the tool that created the /system-update symlink could be installed without the service unit that was supposed to perform the upgrade (and remove the symlink). In fact, if there are no units in system-update.target, and /system-update symlink is created, systemd always "hangs" in system-update.target. This is confusing for users, because there's no feedback what is happening, and fixing this requires starting an emergency shell somehow, and also knowing that the symlink must be removed. We should be more resilient in this case, and remove the symlink automatically ourselves, if there are no upgrade service to handle it. This adds a service which is started after system-update.target is reached and the symlink still exists. It nukes the symlink and reboots the machine. It should subsequently boot into the default default.target. This is a more general fix for https://bugzilla.redhat.com/show_bug.cgi?id=1395686 (the packaging issue was already fixed).