Commit ed061a8d authored by Michal Schmidt's avatar Michal Schmidt
Browse files

units: add systemd-debug-shell.service

If enabled, the service provides a root shell from an early boot. It also
remains active late into shutdown. It is useful for debugging startup and
shutdown problems.

This is the unit referenced in
http://freedesktop.org/wiki/Software/systemd/Debugging#early_debug_shell
parent a2368a3f
......@@ -340,7 +340,8 @@ nodist_systemunit_DATA = \
units/user@.service \
units/systemd-udev.service \
units/systemd-udev-trigger.service \
units/systemd-udev-settle.service
units/systemd-udev-settle.service \
units/systemd-debug-shell.service
dist_userunit_DATA = \
units/user/default.target \
......@@ -378,6 +379,7 @@ EXTRA_DIST += \
units/systemd-udev.service \
units/systemd-udev-trigger.service \
units/systemd-udev-settle.service \
units/systemd-debug-shell.service.in \
units/hibernate.service.in \
units/suspend.service.in \
introspect.awk \
......@@ -3019,6 +3021,7 @@ SED_PROCESS = \
-e 's,@VERSION\@,$(VERSION),g' \
-e 's,@rootprefix\@,$(rootprefix),g' \
-e 's,@udevlibexecdir\@,$(libexecdir)/udev,g' \
-e 's,@sushell\@,$(sushell),g' \
< $< > $@ || rm $@
units/%: units/%.in Makefile
......
......@@ -172,6 +172,12 @@ if test "x$enable_selinux" != "xno"; then
fi
fi
AM_CONDITIONAL(HAVE_SELINUX, [test "$have_selinux" = "yes"])
if test "x${have_selinux}" != xno ; then
sushell=/sbin/sushell
else
sushell=/bin/bash
fi
AC_SUBST(sushell)
# ------------------------------------------------------------------------------
have_xz=no
......
[Unit]
Description=Early root shell on tty9 FOR DEBUGGING ONLY
DefaultDependencies=no
IgnoreOnIsolate=yes
[Service]
Environment=TERM=linux
ExecStart=@sushell@
Restart=always
RestartSec=0
StandardInput=tty
TTYPath=/dev/tty9
TTYReset=yes
TTYVHangup=yes
KillMode=process
IgnoreSIGPIPE=no
# bash ignores SIGTERM
KillSignal=SIGHUP
# Unset locale for the console getty since the console has problems
# displaying some internationalized messages.
Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION=
[Install]
WantedBy=sysinit.target
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment