systemd/0001-units-make-ExecStopPost-action-part-of-ExecStart.patch

47 lines
2.2 KiB
Diff

Based on d3381512282f2ca1c7669f77fb736a90fdce6982 Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Tue, 8 Jul 2014 17:42:23 +0200
Subject: [PATCH] units: make ExecStopPost action part of ExecStart
Currently after exiting rescue shell we isolate default target. User
might want to isolate to some other target than default one. However
issuing systemctl isolate command to desired target would bring system
to default target as a consequence of running ExecStopPost action.
Having common ancestor for rescue shell and possible followup systemctl
default command should fix this. If user exits rescue shell we will
proceed with isolating default target, otherwise, on manual isolate,
parent shell process is terminated and we don't isolate default target,
but target chosen by user.
Suggested-by: Michal Schmidt <mschmidt@redhat.com>
---
units/emergency.service.in | 3 +--
units/rescue.service.m4.in | 3 +--
2 files changed, 2 insertions(+), 4 deletions(-)
--- units/emergency.service.in
+++ units/emergency.service.in 2014-07-10 13:31:50.662235825 +0000
@@ -18,8 +18,7 @@ WorkingDirectory=/root
ExecStartPre=-/usr/bin/plymouth quit
ExecStartPre=-/usr/bin/plymouth --wait
ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.'
-ExecStart=-/usr/sbin/sulogin
-ExecStopPost=@SYSTEMCTL@ --fail --no-block default
+ExecStart=-/bin/sh -c "/usr/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default"
Type=idle
StandardInput=tty-force
StandardOutput=inherit
--- units/rescue.service.m4.in
+++ units/rescue.service.m4.in 2014-07-10 13:32:15.678235509 +0000
@@ -19,8 +19,7 @@ WorkingDirectory=/root
ExecStartPre=-/usr/bin/plymouth quit
ExecStartPre=-/usr/bin/plymouth --wait
ExecStartPre=-/bin/echo -e 'Welcome to rescue mode! Type "systemctl default" or ^D to enter default mode.\\nType "journalctl -xb" to view system logs. Type "systemctl reboot" to reboot.'
-ExecStart=-/usr/sbin/sulogin
-ExecStopPost=-@SYSTEMCTL@ --fail --no-block default
+ExecStart=-/bin/sh -c "/usr/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default"
Type=idle
StandardInput=tty-force
StandardOutput=inherit