X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=handlers%2Frdiff;h=dc985019fa6df2ae0b44420199f13aa44cb9cdaf;hb=b7dd0cbf8138bb02b5309ac98db10705ab40312e;hp=e2ab5e8ac9dabfedd3fea44951a2f99977423d58;hpb=22bea56d9e8bf5c4645a628fe8e9f08f8b29e675;p=matthijs%2Fupstream%2Fbackupninja.git diff --git a/handlers/rdiff b/handlers/rdiff index e2ab5e8..dc98501 100644 --- a/handlers/rdiff +++ b/handlers/rdiff @@ -94,7 +94,7 @@ check_consistency "destination" "$type" "$user" "$host" # See if vservers are configured local usevserver=no -if [ $vservers_are_available = yes ]; then +if [ $vservers_are_available = yes -a -n "$vsinclude" ]; then info "vserver method enabled" usevserver=yes fi @@ -114,7 +114,6 @@ fi # source specific checks [ "$include" != "" -o "$vsinclude" != "" ] || fatal "No source includes specified" -#TODO should I test for vsinclude if usevservers=yes? case $sourcetype in remote ) execstr_sourcepart="$sourceuser@$sourcehost::/" ;; local ) execstr_sourcepart="/" ;; @@ -160,12 +159,12 @@ execstr="$RDIFFBACKUP $options --print-statistics " # TODO: order the includes and excludes # excludes -for i in $exclude; do +for i in "$exclude"; do str="${i//__star__/*}" execstr="${execstr}--exclude '$str' " done # includes -for i in $include; do +for i in "$include"; do [ "$i" != "/" ] || fatal "Sorry, you cannot use 'include = /'" str="${i//__star__/*}" execstr="${execstr}--include '$str' " @@ -173,12 +172,12 @@ done # vsinclude if [ $usevserver = yes ]; then - for vserver in `ls $VROOTDIR|grep -v lost+found`; do - for vi in $vsinclude; do - str="${vi//__star__/*}" - execstr="${execstr}--include '$VROOTDIR/$vserver$str' " - done - done + for vserver in $found_vservers; do + for vi in "$vsinclude"; do + str="${vi//__star__/*}" + execstr="${execstr}--include '$VROOTDIR/$vserver$str' " + done + done fi # exclude everything else