-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I am not sure what you are trying to do here. -u is not the
difference between a complete and differential copy. Rsync always
skips copying stuff that is already there and hasn't changed. The -u
just tells it not to overwrite new files with older versions which is
something you shouldn't have in a backup anyway.
The big difference between rsyncing locally vs to a remote system is
that rsync forces --whole-file when running locally.
On 08/25/13 16:38, David Highley wrote:> I have run out of ideas on why the local and remote back ups done
> with the script below behave differently. The local always seems to
> be a complete back up while the remotes are delta back ups except
> on Mondays.
>
> Cron line example: /root/bin/backups /export/home redwood
> "--exclude='*.sock' --exclude='*cache*'
> --exclude=/export/home/*/.gvfs"
>
>
> #!/bin/bash
>
> # Script for one week incremental rsync back up scheme.
>
> if [ $# -lt 2 ]; then echo "Usage: $name source server [ filters,
> --exclude ]" >&2 exit 1 fi
>
> trap cleanup 2 3 6 9 10 12 13 15 16 17 18 19 20 23 24 30 31
>
> # Get our script name, the source directory to be transfered, #
> server to send to, and optional filtering, --exclude.
> name=`basename $0` base=`basename $1` source=$1 server=$2 if [ $#
> -eq 3 ]; then filters=$3 fi
>
> # Day of week, 1 to 7. day=`/bin/date '+%u'`
>
> # Set the options to be used, using -X is not useful with selinux.
> # Archive with hard links all attributes and relative paths. # Run
> verbose, can create a cron log message to big for email. # Day of
> week, 1 to 7; where Monday is 1. #if [ ${day} -eq 7 ]; then do a
> full backup if [ ${day} -eq 7 ]; then options='-qaHAR' else
> options='-qauHAR' fi
>
> # Signal handler for abort clean up of lock file. cleanup() { echo
> "Caught Signal removing lock file /tmp/${name}.${base}.${server}"
> >&2 rm -f /tmp/${name}.${base}.${server} exit 0 }
>
> if [ ! -d "${source}" ]; then echo "Source ${source} not
found."
> exit 2 fi
>
> # Get this systems hostname and # check if we are backing up to
> the # system the script is running on. ItIsI=`uname -n` if [
> "${server}" = "${ItIsI}" ]; then if [ -d /backups ];
then
> dest="/backups/${server}" options+="
--backup-dir=${source}.${day}"
> else echo "Directory /backups does not exist." exit 3 fi else #
> Set a time out in case the server goes away. # We are using
> hostname for the rsync module parameter.
dest="${server}::${ItIsI}"
> options+=" --contimeout=300 --backup-dir=${source}.${day}" #
Test
> if we can talk to back up server. ping -c 1 ${server} >/dev/null
> 2>&1 if [ $? -ne 0 ]; then echo "Could not ping server
${server}"
> >&2 exit 4 fi fi
>
> # Use flock file to prevent overlap per source, ${1}. flock -xn
> /tmp/${name}.${base}.${server} \ -c "rsync ${options} ${filters}
> --ignore-errors --delete-excluded --delete --delete-during
> ${source} ${dest}"
>
> rm -f /tmp/${name}.${base}.${server}
>
> exit 0
>
- --
~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~
Kevin Korb Phone: (407) 252-6853
Systems Administrator Internet:
FutureQuest, Inc. Kevin at FutureQuest.net (work)
Orlando, Florida kmk at sanitarium.net (personal)
Web page: http://www.sanitarium.net/
PGP public key available on web site.
~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iEYEARECAAYFAlIabuQACgkQVKC1jlbQAQfDWACfUL/4ySTHUjgbF5Skr+YJ8h/1
/NoAnicsbaiZzWmR8j0JUAW5TkioA2Qs
=Uw4L
-----END PGP SIGNATURE-----