[Bug 1821252] Re: systemctl set-default breaks recovery mode
Launchpad Bug Tracker
1821252 at bugs.launchpad.net
Mon Jul 8 07:26:25 UTC 2019
This bug was fixed in the package friendly-recovery - 0.2.31ubuntu2.1
---------------
friendly-recovery (0.2.31ubuntu2.1) xenial; urgency=medium
[ Steven Clarkson ]
* lib/systemd/system-generators/friendly-recovery:
Symlink default.target to earlydir instead of normaldir to be
able to access recovery mode even if default target has been set
via systemctl set-default (LP: #1821252).
-- Ioanna Alifieraki <ioanna-maria.alifieraki at canonical.com> Fri, 21
Jun 2019 16:35:01 +0100
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to friendly-recovery in Ubuntu.
https://bugs.launchpad.net/bugs/1821252
Title:
systemctl set-default breaks recovery mode
Status in friendly-recovery package in Ubuntu:
Fix Released
Status in friendly-recovery source package in Xenial:
Fix Released
Status in friendly-recovery source package in Bionic:
Fix Released
Status in friendly-recovery source package in Cosmic:
Fix Released
Status in friendly-recovery source package in Disco:
Fix Released
Status in friendly-recovery source package in Eoan:
Fix Released
Bug description:
[Impact]
* A recovery mode boot is effectively a normal boot on any system
that has ever had systemctl set-default run on it, i.e., the recovery
kernel parameter does nothing. In particular, ubiquity calls systemctl
set-default as part of the oem-config process, rendering recovery mode
useless on any oem-configured machine.
* This is a regression from previous behavior, where recovery mode
would override a user-set default target.
* This would also restore the intuitive behavior of this package. It
is intended to be run by setting a kernel parameter for a one-time
boot, and should therefore take priority over any other settings (such
as configuring a different default target).
[Test Case]
* Run systemctl set-default multi-user.target
* Use the GRUB menu to try to boot into recovery mode
* Observe that you end up at a TTY, not in recovery mode
[Regression Potential]
* Possible regression if someone set recovery as a default kernel
parameter, then relied on the default systemd target to override it.
This seems like an unlikely use-case.
[Original Description]
Fresh Ubuntu 18.04.2 server install
Try to boot to recovery mode from GRUB. Works correctly.
Use systemctl to set a different default, say systemctl set-default
multi-user.target
Try to boot to recovery mode from GRUB. End up at getty and not the
recovery menu.
Delete /etc/systemd/system/default.target* and recovery mode works
normally again.
I believe this can be fixed by changing normaldir to earlydir in the
generator.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/friendly-recovery/+bug/1821252/+subscriptions
More information about the foundations-bugs
mailing list