# 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, 2015 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
# 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 $@"
# Use "backup" ssh key with ssh protocol, or password file for rsync protocol
if [ "${SRC%:*}" == "rsync" ]; then
RSYNC_OPTS="$RSYNC_OPTS --password-file=/etc/wizbackup/rsync_password --contimeout 10"
else
# Use "backup" ssh key with ssh protocol, or password file for rsync protocol
if [ "${SRC%:*}" == "rsync" ]; then
RSYNC_OPTS="$RSYNC_OPTS --password-file=/etc/wizbackup/rsync_password --contimeout 10"
else
- local old="`ls | grep -v tmp | head -n -$SNAPSHOTS`"
- if [ ! -z "$old" ]; then
+ local num_snapshots="$1"
+ local suffix="$2"
+ local oldest="$(ls -d [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$suffix | head -n -$num_snapshots)"
+ for old in $oldest; do
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