Add config
authorBernie Innocenti <bernie@codewiz.org>
Fri, 8 Mar 2013 23:39:45 +0000 (18:39 -0500)
committerBernie Innocenti <bernie@codewiz.org>
Fri, 8 Mar 2013 23:39:45 +0000 (18:39 -0500)
wizbackup

index 975fc6a9e42e819b25a0d49d7983edf3320cb4d0..0656128e089f65f2477f164f9804c3cf9b974c2c 100755 (executable)
--- a/wizbackup
+++ b/wizbackup
@@ -4,7 +4,7 @@
 # Based on incremental-backup 0.1 by Matteo Mattei
 #
 # Copyright 2006 Matteo Mattei <matteo.mattei@gmail.com>
 # Based on incremental-backup 0.1 by Matteo Mattei
 #
 # Copyright 2006 Matteo Mattei <matteo.mattei@gmail.com>
-# Copyright 2007, 2008, 2009, 2010, 2011 Bernie Innocenti <bernie@codewiz.org>
+# Copyright 2007, 2008, 2009, 2010, 2011, 2012 Bernie Innocenti <bernie@codewiz.org>
 #
 #  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
 #
 #  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
@@ -38,6 +38,8 @@ SRC=$1; shift
 # Destination directory (will be created if it doesn't exist)
 DEST=$1; shift
 
 # Destination directory (will be created if it doesn't exist)
 DEST=$1; shift
 
+CONF_FILE="/etc/wizbackup/wizbackup.conf"
+
 # NOTE: --timeout needs to be large enough: if a large dir tree don't change a lot of time can pass without I/O
 # NOTE: --inplace will clobber linked files in older snapshots. DON'T USE IT!
 RSYNC_OPTS="-HAXa --stats --timeout 1800 --numeric-ids --delete --delete-excluded --ignore-errors $@"
 # NOTE: --timeout needs to be large enough: if a large dir tree don't change a lot of time can pass without I/O
 # NOTE: --inplace will clobber linked files in older snapshots. DON'T USE IT!
 RSYNC_OPTS="-HAXa --stats --timeout 1800 --numeric-ids --delete --delete-excluded --ignore-errors $@"
@@ -52,6 +54,9 @@ RESULT=500
 DATE=`date +"%Y%m%d"`
 DEST="`echo $DEST | sed -e 's/\/$//'`"
 
 DATE=`date +"%Y%m%d"`
 DEST="`echo $DEST | sed -e 's/\/$//'`"
 
+if [ -f "$CONF_FILE" ]; then
+       source /etc/wizbackup/wizbackup.conf
+fi
 
 # Use "backup" ssh key with ssh protocol, or password file for rsync protocol
 if [ "${SRC%:*}" == "rsync" ]; then
 
 # Use "backup" ssh key with ssh protocol, or password file for rsync protocol
 if [ "${SRC%:*}" == "rsync" ]; then
@@ -109,16 +114,16 @@ do_init()
 
 do_prune()
 {
 
 do_prune()
 {
-       local old="`ls | grep -v tmp | head -n -$SNAPSHOTS`"
+       local old=`ls | grep -v tmp | head -n -$SNAPSHOTS | tr '\n' ' '`
        if [ ! -z "$old" ]; then
                echo "$(date): Removing oldest snapshot(s): $old..."
        if [ ! -z "$old" ]; then
                echo "$(date): Removing oldest snapshot(s): $old..."
-               rm -rf "$old" || exit 669
+               rm -rf $old || exit 669
        fi
 }
 
 do_link()
 {
        fi
 }
 
 do_link()
 {
-       local newest=`ls | grep  -v tmp | tail -n 1`
+       local newest=`ls | grep -v tmp | tail -n 1`
        if [ -d "$DEST/tmp" ]; then
                echo "$(date): Continuing with pre-existing snapshot $DEST/tmp"
        elif [ -z "$newest" ]; then
        if [ -d "$DEST/tmp" ]; then
                echo "$(date): Continuing with pre-existing snapshot $DEST/tmp"
        elif [ -z "$newest" ]; then
@@ -168,7 +173,7 @@ do_test()
 # make sure to be root
 if (( `id -u` != 0 )); then { echo "Sorry, must be root.  Exiting..."; exit; } fi
 
 # make sure to be root
 if (( `id -u` != 0 )); then { echo "Sorry, must be root.  Exiting..."; exit; } fi
 
-echo "$(date): BEGIN backup: $SRC -> $DEST"
+echo "$(date): BEGIN backup: $0 $@"
 echo "$(date): $0 $SRC $DEST $@"
 do_init
 do_prune
 echo "$(date): $0 $SRC $DEST $@"
 do_init
 do_prune