]> arthur.barton.de Git - backup-script.git/blobdiff - bin/backup-script-wrapper
Respect "dry run mode" when continuing snapshots
[backup-script.git] / bin / backup-script-wrapper
index fbd061f6c919b37e7ae162defdb5202e4d7b91c1..64c9d7d8fef8832d627547010d2c38943ecad0dc 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 # backup-script system for cloning systems using rsync
-# Copyright (c)2008-2015 Alexander Barton, alex@barton.de
+# Copyright (c)2008-2016 Alexander Barton, alex@barton.de
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -13,7 +13,7 @@
 if [ -z "$MAILTO" ]; then
        if id "logcheck" >/dev/null 2>&1; then
                MAILTO="logcheck"
-       elif fgrep "logcheck:" /etc/aliases >/dev/null 2>&1; then
+       elif grep -F "logcheck:" /etc/aliases >/dev/null 2>&1; then
                MAILTO="logcheck"
        else
                MAILTO="root"
@@ -21,9 +21,12 @@ if [ -z "$MAILTO" ]; then
 fi
 
 NAME="backup-script"
-HOST=`hostname`
-TMP=`mktemp /tmp/$NAME.XXXXXXXX` || exit 11
-LOGFILE="/var/log/backup-script.log"
+
+DELIMITER="- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
+HOST=$(hostname -f)
+LOGFILE="/var/log/$NAME.log"
+SUBJECT="$NAME results"
+TMP=$(mktemp /tmp/$NAME.XXXXXXXX) || exit 1
 
 PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
 export PATH
@@ -32,11 +35,15 @@ exec >"$TMP" 2>&1
 
 echo "$NAME Report"
 echo
-echo " - Host: `hostname -f`"
-echo " - User: `id -un`"
+echo " - Host: $(hostname -f)"
+echo " - User: $(id -un)"
+echo
+echo "Command:"
+echo "$0" "$@"
 echo
 
-if [ -w "$LOGFILE" ]; then
+if echo "$DELIMITER" >>"$LOGFILE" 2>/dev/null; then
+       echo >>"$LOGFILE"
        "$(dirname "$0")/backup-script" "$@" | tee -a "$LOGFILE"
        r=${PIPESTATUS[0]}
 else
@@ -45,7 +52,15 @@ else
        echo "(Can't write logfile: \"$LOGFILE\"!)"
 fi
 
-cat "$TMP" | mail -s "$HOST: $NAME results" "$MAILTO"
+case "$r" in
+       0)
+               SUBJECT="$SUBJECT - success"
+               ;;
+       *)
+               SUBJECT="$SUBJECT - with ERRORS!"
+esac
+
+mail -s "$HOST: $SUBJECT" "$MAILTO" <"$TMP"
 
 rm -f "$TMP"
 exit $r