X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=units%2Femergency.service;h=4847f4f0c6ef243c878fa6e635cb8976911becf3;hp=924723fefede74b2fe1a98653aa5cf781b4477d7;hb=822b18599d1c9465449c7111fe7e7b86fbf44a57;hpb=1f48cf56cb2693b84fdc76dc8df0b048ed50ef43 diff --git a/units/emergency.service b/units/emergency.service index 924723fef..4847f4f0c 100644 --- a/units/emergency.service +++ b/units/emergency.service @@ -9,10 +9,22 @@ [Unit] Description=Emergency Shell +DefaultDependencies=no +Conflicts=shutdown.target +Before=shutdown.target [Service] -ExecStart=/bin/sh -StandardInput=tty -Restart=restart-always -RestartSec=0 -KillMode=process-group +Environment=HOME=/root +WorkingDirectory=/root +ExecStartPre=-/bin/plymouth quit +ExecStartPre=-/bin/echo 'Welcome to emergency mode. Use "systemctl default" or ^D to activate default mode.' +ExecStart=-/sbin/sulogin +ExecStopPost=/bin/systemctl --fail --no-block default +StandardInput=tty-force +StandardOutput=inherit +StandardError=inherit +KillMode=process + +# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash +# terminates cleanly. +KillSignal=SIGHUP