aboutsummaryrefslogtreecommitdiff
path: root/handlers/dup
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2006-01-19 21:58:38 +0000
committerintrigeri <intrigeri@boum.org>2006-01-19 21:58:38 +0000
commit51d938cd68c7a2eeaca73de9e14c6c34efceca88 (patch)
tree01b9ec9937af45650a9a48a024d655af11bb9257 /handlers/dup
parent8bc9312e15bf0284b3767e1791c0de3522f410f2 (diff)
downloadbackupninja-51d938cd68c7a2eeaca73de9e14c6c34efceca88.tar.gz
backupninja-51d938cd68c7a2eeaca73de9e14c6c34efceca88.tar.bz2
- dup & rdiff handlers: finally, a real and well tested fix for the globbing bug
- rdiff: it's now possible to choose exactly which vservers should be backed-up, as it already was with duplicity handler, with the "vsnames" configuration setting
Diffstat (limited to 'handlers/dup')
-rw-r--r--handlers/dup13
1 files changed, 9 insertions, 4 deletions
diff --git a/handlers/dup b/handlers/dup
index d32fcf2..6918702 100644
--- a/handlers/dup
+++ b/handlers/dup
@@ -34,8 +34,9 @@ destdir=${destdir%/}
[ "$include" != "" ] || fatal "No source includes specified"
### vservers stuff ###
-local usevserver=no
+
# If vservers are configured, check that the ones listed in $vsnames do exist.
+local usevserver=no
if [ $vservers_are_available = yes ]; then
if [ "$vsnames" = all ]; then
vsnames="$found_vservers"
@@ -113,14 +114,16 @@ execstr_clientpart="/"
### SOURCE ###
+set -o noglob
+
# 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
str="${i//__star__/*}"
execstr="${execstr}--include '$str' "
done
@@ -128,13 +131,15 @@ done
# vsincludes
if [ $usevserver = yes ]; then
for vserver in $vsnames; do
- for vi in "$vsinclude"; do
+ for vi in $vsinclude; do
str="${vi//__star__/*}"
execstr="${execstr}--include '$VROOTDIR/$vserver$str' "
done
done
fi
+set +o noglob
+
### EXECUTE ###
# exclude everything else, start with root