diff --git a/modules.d/99shutdown/shutdown.sh b/modules.d/99shutdown/shutdown.sh index e3884a88..a30a126f 100755 --- a/modules.d/99shutdown/shutdown.sh +++ b/modules.d/99shutdown/shutdown.sh @@ -6,7 +6,13 @@ # Harald Hoyer ACTION="$1" -[ -w /dev/console ] && exec >/dev/console 2>>/dev/console +# Before trying to use /dev/console, verify that it exists, +# and that it can actually be used. When console=null is used, +# echo will fail. We do the check in a subshell, because otherwise +# the process will be killed when when running as PID 1. +[ -w /dev/console ] && \ + ( echo /dev/null ) && \ + exec >/dev/console 2>>/dev/console export TERM=linux export PATH=/usr/sbin:/usr/bin:/sbin:/bin