# Copyright © martin f. krafft <madduck@madduck.net>
# Released under the terms of the Artistic Licence 2.0
#
-# $Id: shutdown 299 2006-10-16 14:40:47Z madduck $
-#
set -eu
ME=molly-guard
+CHECKSDIR=/etc/molly-guard/checks.d
CMD="${0##*/}"
EXEC="/sbin/$CMD"
to guard against accidental shutdowns/reboots.
Some of the checks available are:
- - Prompt the user for the machine's if the current shell is a child
- of an SSH connection (or --pretend-ssh) has been given on the
- command line, if the shell is connected to an interactive
- terminal, and the actual command to execute is does not involve
- --help or is \`shutdown -c'.
+ - Prompt the user for the machine's if the current shell is a child
+ of an SSH connection (or --pretend-ssh) has been given on the
+ command line, if the shell is connected to an interactive
+ terminal, and the actual command to execute is does not involve
+ --help or is \`shutdown -c'.
$ME will always interpose the prompt if the environment variable
ALWAYS_MOLLY is set to '1'. This variable may be set in the file
/etc/default/${ME} .
+ - Print out a warning message with information about this host
+ before the action takes place. You can use:
+ /etc/molly-guard.<Action>.message
+ To print out a message specific to the command you're trying to
+ use. Or:
+ /etc/molly-guard.message
+ For a general warning message.
+
Only if the user satisfies all the checks will $ME take action.
Specifying --molly-guard-do-nothing as argument to the command will
make $ME echo the command it would execute rather than actually executing
;;
esac
-run-parts --exit-on-error $CHECK_ARGS /usr/share/molly-guard/checks.d
+run-parts --exit-on-error --arg $CMD $CHECK_ARGS /etc/molly-guard/checks.d
# run-parts won't return to us if there are failures, but I'm paranoid.
if [ $? == 0 ]; then