84b277
From 9af28110933ae9cdd96477dd2911c19295bc74ce Mon Sep 17 00:00:00 2001
84b277
From: Michal Sekletar <msekleta@redhat.com>
84b277
Date: Tue, 8 Jul 2014 17:42:23 +0200
84b277
Subject: [PATCH] units: make ExecStopPost action part of ExecStart
84b277
84b277
Currently after exiting rescue shell we isolate default target. User
84b277
might want to isolate to some other target than default one. However
84b277
issuing systemctl isolate command to desired target would bring system
84b277
to default target as a consequence of running ExecStopPost action.
84b277
84b277
Having common ancestor for rescue shell and possible followup systemctl
84b277
default command should fix this. If user exits rescue shell we will
84b277
proceed with isolating default target, otherwise, on manual isolate,
84b277
parent shell process is terminated and we don't isolate default target,
84b277
but target chosen by user.
84b277
84b277
Suggested-by: Michal Schmidt <mschmidt@redhat.com>
84b277
84b277
(cherry picked from commit d3381512282f2ca1c7669f77fb736a90fdce6982)
84b277
84b277
Resolves: #1036276
84b277
---
84b277
 units/emergency.service.in | 3 +--
84b277
 units/rescue.service.m4.in | 3 +--
84b277
 2 files changed, 2 insertions(+), 4 deletions(-)
84b277
84b277
diff --git a/units/emergency.service.in b/units/emergency.service.in
84b277
index 94c090f..91fc1bb 100644
84b277
--- a/units/emergency.service.in
84b277
+++ b/units/emergency.service.in
84b277
@@ -17,8 +17,7 @@ Environment=HOME=/root
84b277
 WorkingDirectory=/root
84b277
 ExecStartPre=-/bin/plymouth quit
84b277
 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.'
84b277
-ExecStart=-/sbin/sulogin
84b277
-ExecStopPost=@SYSTEMCTL@ --fail --no-block default
84b277
+ExecStart=-/bin/sh -c "/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default"
84b277
 Type=idle
84b277
 StandardInput=tty-force
84b277
 StandardOutput=inherit
84b277
diff --git a/units/rescue.service.m4.in b/units/rescue.service.m4.in
84b277
index 552ef89..ef54369 100644
84b277
--- a/units/rescue.service.m4.in
84b277
+++ b/units/rescue.service.m4.in
84b277
@@ -18,8 +18,7 @@ Environment=HOME=/root
84b277
 WorkingDirectory=/root
84b277
 ExecStartPre=-/bin/plymouth quit
84b277
 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.'
84b277
-ExecStart=-/sbin/sulogin
84b277
-ExecStopPost=-@SYSTEMCTL@ --fail --no-block default
84b277
+ExecStart=-/bin/sh -c "/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default"
84b277
 Type=idle
84b277
 StandardInput=tty-force
84b277
 StandardOutput=inherit