X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=backupninja;h=ea7304e115918c95f839b293dd4156cc6dac14f5;hb=c2b40bb9d36bf88abd3c5a9caebcd15b53383695;hp=804c1c228285c5099849529237a69ba7dc9d475f;hpb=481f6f8a755d39582e1e290d790dd9e73c7da3e5;p=matthijs%2Fupstream%2Fbackupninja-vserver.git diff --git a/backupninja b/backupninja index 804c1c2..ea7304e 100755 --- a/backupninja +++ b/backupninja @@ -163,8 +163,8 @@ function check_perms() { local perms=`ls -ld $file` perms=${perms:4:6} if [ "$perms" != "------" ]; then - echo "Configuration files must not be group or world readable! Dying on file $file" - fatal "Configuration files must not be group or world readable! Dying on file $file" + echo "Configuration files must not be group or world writable/readable! Dying on file $file" + fatal "Configuration files must not be group or world writable/readable! Dying on file $file" fi if [ `ls -ld $file | awk '{print $3}'` != "root" ]; then echo "Configuration files must be owned by root! Dying on file $file" @@ -271,7 +271,7 @@ EOF function process_action() { local file="$1" local suffix="$2" - + local run="no" setfile $file # skip over this config if "when" option @@ -279,8 +279,10 @@ function process_action() { getconf when "$defaultwhen" if [ "$processnow" == 1 ]; then info ">>>> starting action $file (because of --now)" + run="yes" elif [ "$when" == "hourly" ]; then info ">>>> starting action $file (because 'when = hourly')" + run="yes" else IFS=$'\t\n' for w in $when; do @@ -290,18 +292,27 @@ function process_action() { IFS=$'\t\n' if [ $ret == 0 ]; then debug "skipping $file because it is not $w" - return else info ">>>> starting action $file (because it is $w)" + run="yes" fi done IFS=$' \t\n' fi + debug $run + [ "$run" == "no" ] && return let "actions_run += 1" # call the handler: - local bufferfile="/tmp/backupninja.buffer.$$" + if [ -x /bin/mktemp ] + then + local bufferfile=`mktemp /tmp/backupninja.buffer.XXXXXXXX` + else + DATE=`date` + sectmp=`echo $DATE | /usr/bin/md5sum | cut -d- -f1` + local bufferfile=/tmp/backupninja.buffer.$sectmp + fi echo "" > $bufferfile echo_debug_msg=1 ( @@ -434,6 +445,8 @@ getconf RDIFFBACKUP /usr/bin/rdiff-backup getconf MYSQL /usr/bin/mysql getconf MYSQLHOTCOPY /usr/bin/mysqlhotcopy getconf MYSQLDUMP /usr/bin/mysqldump +getconf PGSQLDUMP /usr/bin/pg_dump +getconf PGSQLDUMPALL /usr/bin/pg_dumpall getconf GZIP /bin/gzip getconf RSYNC /usr/bin/rsync getconf vservers no @@ -473,7 +486,7 @@ errormsg="" if [ "$singlerun" ]; then files=$singlerun else - files=`find $configdirectory -mindepth 1 | sort -n` + files=`find $configdirectory -mindepth 1 ! -name '.*.swp' | sort -n` fi for file in $files; do