summaryrefslogtreecommitdiffstats
path: root/modules.d/98dracut-systemd/emergency.service
diff options
context:
space:
mode:
Diffstat (limited to 'modules.d/98dracut-systemd/emergency.service')
-rw-r--r--modules.d/98dracut-systemd/emergency.service29
1 files changed, 29 insertions, 0 deletions
diff --git a/modules.d/98dracut-systemd/emergency.service b/modules.d/98dracut-systemd/emergency.service
new file mode 100644
index 0000000..27c69e1
--- /dev/null
+++ b/modules.d/98dracut-systemd/emergency.service
@@ -0,0 +1,29 @@
+# This file is part of dracut.
+
+[Unit]
+Description=Emergency Shell
+Documentation=man:dracut.bootup(7)
+DefaultDependencies=no
+After=systemd-vconsole-setup.service
+Wants=systemd-vconsole-setup.service
+Conflicts=shutdown.target
+Before=shutdown.target
+
+[Service]
+Environment=HOME=/
+Environment=DRACUT_SYSTEMD=1
+Environment=NEWROOT=/sysroot
+WorkingDirectory=/
+ExecStart=/bin/dracut-emergency
+ExecStopPost=-/usr/bin/systemctl --fail --no-block default
+Type=idle
+StandardInput=tty-force
+StandardOutput=inherit
+StandardError=inherit
+KillMode=process
+IgnoreSIGPIPE=no
+TasksMax=infinity
+
+# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash
+# terminates cleanly.
+KillSignal=SIGHUP