From Fedora Project Wiki

Revision as of 08:03, 11 May 2012 by Michich (talk | contribs) (debug-shell.service)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

In case of boot-time problems with systemd, it is useful to have a root shell available for debugging.

  • Save the following unit as /etc/systemd/system/debug-shell.service
[Unit]
Description=early root shell on tty9 for debugging
DefaultDependencies=no
IgnoreOnIsolate=yes

[Service]
Environment=TERM=linux
ExecStart=/usr/bin/openvt -f -c 9 -e /usr/bin/bash
Restart=always
RestartSec=0
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
  • Enable it using systemctl enable debug-shell.service
  • Next time when booting, you will be able to switch to tty9 using CTRL+ALT+F9 and have a root shell there available from an early point in the booting process.