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=bcedebfa089d711f8df3201b3637381c847cfa7a;hb=822b18599d1c9465449c7111fe7e7b86fbf44a57;hpb=983d9c90151f4b85301bd8078afd560269e75961 diff --git a/units/emergency.service b/units/emergency.service index bcedebfa0..4847f4f0c 100644 --- a/units/emergency.service +++ b/units/emergency.service @@ -10,16 +10,21 @@ [Unit] Description=Emergency Shell DefaultDependencies=no -Requires=shutdown.target umount.target -After=shutdown.target umount.target +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 first, to ensure that bash +# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash # terminates cleanly. -ExecStop=/bin/kill -HUP $(MAINPID) +KillSignal=SIGHUP