|
|
@ -4,7 +4,7 @@ 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.2-RC1+dev
|
|
|
|
PROGRAM_VERSION=1.2-RC1+dev
|
|
|
|
PROGRAM_BUILD=2016121303
|
|
|
|
PROGRAM_BUILD=2016121401
|
|
|
|
IS_STABLE=no
|
|
|
|
IS_STABLE=no
|
|
|
|
|
|
|
|
|
|
|
|
# Execution order #__WITH_PARANOIA_DEBUG
|
|
|
|
# Execution order #__WITH_PARANOIA_DEBUG
|
|
|
@ -212,7 +212,7 @@ function _CheckReplicasLocal {
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Cannot create local replica path [$replicaPath]." "CRITICAL" $retval
|
|
|
|
Logger "Cannot create local replica path [$replicaPath]." "CRITICAL" $retval
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Created local replica path [$replicaPath]." "NOTICE"
|
|
|
|
Logger "Created local replica path [$replicaPath]." "NOTICE"
|
|
|
@ -371,7 +371,7 @@ function _HandleLocksLocal {
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Cannot create state dir [$replicaStateDir]." "CRITICAL" $retval
|
|
|
|
Logger "Cannot create state dir [$replicaStateDir]." "CRITICAL" $retval
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)" "ERROR"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -413,7 +413,7 @@ function _HandleLocksLocal {
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Could not create lock file on local $replicaType in [$lockfile]." "CRITICAL" $retval
|
|
|
|
Logger "Could not create lock file on local $replicaType in [$lockfile]." "CRITICAL" $retval
|
|
|
|
Logger "Command output\n$($RUN_DIR/$PROGRAM.${FUNCNAME[0]}-$replicaType.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command output\n$($RUN_DIR/$PROGRAM.${FUNCNAME[0]}-$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Locked local $replicaType replica in [$lockfile]." "DEBUG"
|
|
|
|
Logger "Locked local $replicaType replica in [$lockfile]." "DEBUG"
|
|
|
@ -614,7 +614,7 @@ ENDSSH
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Could not unlock remote replica." "ERROR" $retval
|
|
|
|
Logger "Could not unlock remote replica." "ERROR" $retval
|
|
|
|
Logger "Command Output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command Output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Removed remote replica lock." "DEBUG"
|
|
|
|
Logger "Removed remote replica lock." "DEBUG"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -699,7 +699,7 @@ function treeList {
|
|
|
|
return $?
|
|
|
|
return $?
|
|
|
|
elif [ $retval -eq 23 ]; then
|
|
|
|
elif [ $retval -eq 23 ]; then
|
|
|
|
Logger "Some files could not be listed in $replicaType replica [$replicaPath]. Check for failing symlinks." "ERROR" $retval
|
|
|
|
Logger "Some files could not be listed in $replicaType replica [$replicaPath]. Check for failing symlinks." "ERROR" $retval
|
|
|
|
Logger "Command output\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.error.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command output\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.error.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
return 0
|
|
|
|
return 0
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Cannot create replica file list in [$replicaPath]." "CRITICAL" $retval
|
|
|
|
Logger "Cannot create replica file list in [$replicaPath]." "CRITICAL" $retval
|
|
|
@ -777,7 +777,7 @@ function _getFileCtimeMtimeLocal {
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Getting file attributes failed [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
Logger "Getting file attributes failed [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "VERBOSE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -800,7 +800,7 @@ function _getFileCtimeMtimeRemote {
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Sending ctime required file list failed with [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
Logger "Sending ctime required file list failed with [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "VERBOSE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -817,7 +817,7 @@ ENDSSH
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Getting file attributes failed [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
Logger "Getting file attributes failed [$retval] on $replicaType. Stopping execution." "CRITICAL" $retval
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
if [ -f "$RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP" ]; then
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "VERBOSE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.ctime_mtime.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
return $retval
|
|
|
|
return $retval
|
|
|
|
else
|
|
|
|
else
|
|
|
@ -1661,7 +1661,7 @@ function _SoftDeleteLocal {
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Error while executing file cleanup on $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Error while executing file cleanup on $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "File cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
Logger "File cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -1669,7 +1669,7 @@ function _SoftDeleteLocal {
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Error while executing directory cleanup on $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Error while executing directory cleanup on $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Directory cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
Logger "Directory cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
@ -1726,7 +1726,7 @@ ENDSSH
|
|
|
|
retval=$?
|
|
|
|
retval=$?
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
if [ $retval -ne 0 ]; then
|
|
|
|
Logger "Error while executing cleanup on remote $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Error while executing cleanup on remote $replicaType replica." "ERROR" $retval
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "NOTICE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "WARN"
|
|
|
|
else
|
|
|
|
else
|
|
|
|
Logger "Cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
Logger "Cleanup complete on $replicaType replica." "NOTICE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "VERBOSE"
|
|
|
|
Logger "Command output:\n$(cat $RUN_DIR/$PROGRAM.${FUNCNAME[0]}.$replicaType.$SCRIPT_PID.$TSTAMP)" "VERBOSE"
|
|
|
|