|
|
@ -3,11 +3,11 @@
|
|
|
|
PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
|
|
|
PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
|
|
|
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
|
|
|
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
|
|
|
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
|
|
|
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
|
|
|
PROGRAM_VERSION=1.1-RC2
|
|
|
|
PROGRAM_VERSION=1.1
|
|
|
|
PROGRAM_BUILD=2016071801
|
|
|
|
PROGRAM_BUILD=2016072701
|
|
|
|
IS_STABLE=yes
|
|
|
|
IS_STABLE=yes
|
|
|
|
|
|
|
|
|
|
|
|
## FUNC_BUILD=2016071902
|
|
|
|
## FUNC_BUILD=2016072701
|
|
|
|
## BEGIN Generic functions for osync & obackup written in 2013-2016 by Orsiris de Jong - http://www.netpower.fr - ozy@netpower.fr
|
|
|
|
## BEGIN Generic functions for osync & obackup written in 2013-2016 by Orsiris de Jong - http://www.netpower.fr - ozy@netpower.fr
|
|
|
|
|
|
|
|
|
|
|
|
## type -p does not work on platforms other than linux (bash). If if does not work, always assume output is not a zero exitcode
|
|
|
|
## type -p does not work on platforms other than linux (bash). If if does not work, always assume output is not a zero exitcode
|
|
|
@ -47,7 +47,7 @@ fi #__WITH_PARANOIA_DEBUG
|
|
|
|
## allow debugging from command line with _DEBUG=yes
|
|
|
|
## allow debugging from command line with _DEBUG=yes
|
|
|
|
if [ ! "$_DEBUG" == "yes" ]; then
|
|
|
|
if [ ! "$_DEBUG" == "yes" ]; then
|
|
|
|
_DEBUG=no
|
|
|
|
_DEBUG=no
|
|
|
|
SLEEP_TIME=.1
|
|
|
|
SLEEP_TIME=.01 # Tested under linux bash / FreeBSD
|
|
|
|
_VERBOSE=0
|
|
|
|
_VERBOSE=0
|
|
|
|
else
|
|
|
|
else
|
|
|
|
SLEEP_TIME=1
|
|
|
|
SLEEP_TIME=1
|
|
|
@ -2119,7 +2119,7 @@ function _delete_remote {
|
|
|
|
exit 1
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
$SSH_CMD ERROR_ALERT=0 sync_on_changes=$sync_on_changes _SILENT=$_SILENT _DEBUG=$_DEBUG _DRYRUN=$_DRYRUN _VERBOSE=$_VERBOSE COMMAND_SUDO=$COMMAND_SUDO FILE_LIST="$(EscapeSpaces "$TARGET_STATE_DIR/$deleted_list_file")" REPLICA_DIR="$(EscapeSpaces "$replica_dir")" DELETE_DIR="$(EscapeSpaces "$deletion_dir")" FAILED_DELETE_LIST="$(EscapeSpaces "${TARGET[1]}${TARGET[3]}/$deleted_failed_list_file")" 'bash -s' << 'ENDSSH' > "$RUN_DIR/$PROGRAM.remote_deletion.$SCRIPT_PID" 2>&1 &
|
|
|
|
$SSH_CMD ERROR_ALERT=0 sync_on_changes=$sync_on_changes _SILENT=$_SILENT _DEBUG=$_DEBUG _DRYRUN=$_DRYRUN _VERBOSE=$_VERBOSE COMMAND_SUDO=$COMMAND_SUDO FILE_LIST="$(EscapeSpaces "$TARGET_STATE_DIR/$deleted_list_file")" REPLICA_DIR="$(EscapeSpaces "$replica_dir")" DELETE_DIR="$(EscapeSpaces "$deletion_dir")" FAILED_DELETE_LIST="$(EscapeSpaces "${TARGET[1]}${TARGET[3]}/$deleted_failed_list_file")" 'bash -s' << 'ENDSSH' > "$RUN_DIR/$PROGRAM.remote_deletion.$SCRIPT_PID" 2>&1
|
|
|
|
|
|
|
|
|
|
|
|
## The following lines are executed remotely
|
|
|
|
## The following lines are executed remotely
|
|
|
|
function _logger {
|
|
|
|
function _logger {
|
|
|
@ -2222,9 +2222,6 @@ $SSH_CMD ERROR_ALERT=0 sync_on_changes=$sync_on_changes _SILENT=$_SILENT _DEBUG=
|
|
|
|
IFS=$OLD_IFS
|
|
|
|
IFS=$OLD_IFS
|
|
|
|
ENDSSH
|
|
|
|
ENDSSH
|
|
|
|
|
|
|
|
|
|
|
|
## Need to add a trivial sleep time to give ssh time to log to local file
|
|
|
|
|
|
|
|
sleep 5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Copy back the deleted failed file list
|
|
|
|
## Copy back the deleted failed file list
|
|
|
|
esc_source_file="$(EscapeSpaces "${TARGET[1]}${TARGET[3]}/$deleted_failed_list_file")"
|
|
|
|
esc_source_file="$(EscapeSpaces "${TARGET[1]}${TARGET[3]}/$deleted_failed_list_file")"
|
|
|
|
rsync_cmd="$(type -p $RSYNC_EXECUTABLE) --rsync-path=\"$RSYNC_PATH\" $SYNC_OPTS -e \"$RSYNC_SSH_CMD\" $REMOTE_USER@$REMOTE_HOST:\"$esc_source_file\" \"${INITIATOR[1]}${INITIATOR[3]}\" > \"$RUN_DIR/$PROGRAM.remote_failed_deletion_list_copy.$SCRIPT_PID\""
|
|
|
|
rsync_cmd="$(type -p $RSYNC_EXECUTABLE) --rsync-path=\"$RSYNC_PATH\" $SYNC_OPTS -e \"$RSYNC_SSH_CMD\" $REMOTE_USER@$REMOTE_HOST:\"$esc_source_file\" \"${INITIATOR[1]}${INITIATOR[3]}\" > \"$RUN_DIR/$PROGRAM.remote_failed_deletion_list_copy.$SCRIPT_PID\""
|
|
|
|