chiark / gitweb /
units: kill the emergency shell with SIGHUP
[elogind.git] / units / emergency.service
index 13fca6fc60d857c893d6161d869c55e77c6d9b9e..8745d101c7f78827fc5cbabbb1552d5a55937426 100644 (file)
@@ -1,27 +1,23 @@
 #  This file is part of systemd.
 #
 #  This file is part of systemd.
 #
-#  Copyright 2010 Lennart Poettering
-#
 #  systemd is free software; you can redistribute it and/or modify it
 #  under the terms of the GNU General Public License as published by
 #  the Free Software Foundation; either version 2 of the License, or
 #  (at your option) any later version.
 #  systemd is free software; you can redistribute it and/or modify it
 #  under the terms of the GNU General Public License as published by
 #  the Free Software Foundation; either version 2 of the License, or
 #  (at your option) any later version.
-#
-#  systemd is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-#  General Public License for more details.
-#
-#  You should have received a copy of the GNU General Public License
-#  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+
+# See systemd.special(7) for details
 
 [Unit]
 Description=Emergency Shell
 
 [Unit]
 Description=Emergency Shell
+DefaultDependencies=no
 
 [Service]
 ExecStart=/bin/sh
 
 [Service]
 ExecStart=/bin/sh
-Type=simple
 StandardInput=tty
 Restart=restart-always
 RestartSec=0
 StandardInput=tty
 Restart=restart-always
 RestartSec=0
-KillMode=process
+KillMode=process-group
+
+# Bash ignores SIGTERM, so we send SIGHUP first, to ensure that bash
+# terminates cleanly.
+ExecStop=/bin/kill -HUP $(MAINPID)