Merge pull request #219 from kendarorg/master

Support for Qnap local and remote (no ctime support)
pull/229/head
Orsiris de Jong 4 years ago committed by GitHub
commit 11e19108f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -30,7 +30,7 @@ osync uses pidlocks to prevent multiple concurrent sync processes on/to the same
You may launch concurrent sync processes on the same system but as long as the replicas to synchronize are different.
Multiple osync tasks may be launched sequentially by osync osync-batch tool.
Currently, it has been tested on CentOS 5.x, 6.x, 7.x, Fedora 22-25, Debian 6-8, Linux Mint 14-18, Ubuntu 12.04-12.10, FreeBSD 8.3-11, Mac OS X and pfSense 2.3.x.
Currently, it has been tested on CentOS 5.x, 6.x, 7.x, Fedora 22-25, Debian 6-8, Linux Mint 14-18, Ubuntu 12.04-12.10, FreeBSD 8.3-11, Mac OS X, QTS 4.5.1(x86) and pfSense 2.3.x.
Microsoft Windows is supported via MSYS or Cygwin and now via Windows 10 bash.
Android support works via Termux.
Some users also have successfully used osync on Gentoo and created an openRC init scriptt for it.

@ -1471,6 +1471,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1697,6 +1700,9 @@ ENDSSH
*"Android"*)
REMOTE_OS="Android"
;;
*"qnap"*)
REMOTE_OS="Qnap"
;;
*"Linux"*)
REMOTE_OS="Linux"
;;
@ -2221,7 +2227,9 @@ function InitRemoteOSDependingSettings {
fi
fi
if [ "$RSYNC_COMPRESS" == true ]; then
if [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
if [ "$LOCAL_OS" == "Qnap" ] || [ "$REMOTE_OS" == "Qnap" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -z --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
elif [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -zz --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
else
Logger "Disabling compression skips on synchronization on [$LOCAL_OS] due to lack of support." "NOTICE"
@ -2663,6 +2671,9 @@ function _CheckReplicasLocal {
if [ $MINIMUM_SPACE -ne 0 ]; then
Logger "Checking minimum disk space in local replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
Logger "Cannot get free space." "ERROR" $retval
@ -2929,6 +2940,9 @@ function _CheckReplicasRemoteSub {
if [ $MINIMUM_SPACE -ne 0 ]; then
RemoteLogger "Checking minimum disk space in remote replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
RemoteLogger "Cannot get free space." "ERROR" $retval
@ -3080,9 +3094,17 @@ function _HandleLocksRemote {
CheckConnectivity3rdPartyHosts
CheckConnectivityRemoteHost
# Check if -A exists on target
ps -A > /dev/null 2>&1
notExistaCapitalA=$?
# Create an array of all currently running pids
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
if [ "$notExistaCapitalA" == "0" ]; then
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
else
read -a initiatorRunningPids <<< $(ps -e | tail -n +2 | awk '{print $1}')
fi
# passing initiatorRunningPids as litteral string (has to be run through eval to be an array again)
$SSH_CMD env _REMOTE_TOKEN="$_REMOTE_TOKEN" \
@ -5297,7 +5319,7 @@ function _SoftDeleteLocal {
local retval
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ]; then
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ] || [ "$LOCAL_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi
@ -5350,7 +5372,7 @@ function _SoftDeleteRemote {
local retval
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ]; then
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ] || [ "$REMOTE_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi

@ -287,6 +287,9 @@ function _CheckReplicasLocal {
if [ $MINIMUM_SPACE -ne 0 ]; then
Logger "Checking minimum disk space in local replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
Logger "Cannot get free space." "ERROR" $retval
@ -355,6 +358,9 @@ function _CheckReplicasRemoteSub {
if [ $MINIMUM_SPACE -ne 0 ]; then
RemoteLogger "Checking minimum disk space in remote replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
RemoteLogger "Cannot get free space." "ERROR" $retval
@ -506,9 +512,17 @@ function _HandleLocksRemote {
CheckConnectivity3rdPartyHosts
CheckConnectivityRemoteHost
# Check if -A exists on target
ps -A > /dev/null 2>&1
notExistaCapitalA=$?
# Create an array of all currently running pids
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
if [ "$notExistaCapitalA" == "0" ]; then
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
else
read -a initiatorRunningPids <<< $(ps -e | tail -n +2 | awk '{print $1}')
fi
# passing initiatorRunningPids as litteral string (has to be run through eval to be an array again)
$SSH_CMD env _REMOTE_TOKEN="$_REMOTE_TOKEN" \
@ -2173,7 +2187,7 @@ function _SoftDeleteLocal {
local retval
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ]; then
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ] || [ "$LOCAL_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi
@ -2226,7 +2240,7 @@ function _SoftDeleteRemote {
local retval
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ]; then
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ] || [ "$REMOTE_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi

@ -1488,6 +1488,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1716,6 +1719,9 @@ ENDSSH
*"Android"*)
REMOTE_OS="Android"
;;
*"qnap"*)
REMOTE_OS="Qnap"
;;
*"Linux"*)
REMOTE_OS="Linux"
;;
@ -2240,7 +2246,9 @@ function InitRemoteOSDependingSettings {
fi
fi
if [ "$RSYNC_COMPRESS" == true ]; then
if [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
if [ "$LOCAL_OS" == "Qnap" ] || [ "$REMOTE_OS" == "Qnap" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -z --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
elif [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -zz --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
else
Logger "Disabling compression skips on synchronization on [$LOCAL_OS] due to lack of support." "NOTICE"

@ -483,6 +483,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1630,6 +1633,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1802,6 +1808,9 @@ ENDSSH
*"Android"*)
REMOTE_OS="Android"
;;
*"qnap"*)
REMOTE_OS="Qnap"
;;
*"Linux"*)
REMOTE_OS="Linux"
;;
@ -2309,7 +2318,9 @@ function InitRemoteOSDependingSettings {
fi
fi
if [ "$RSYNC_COMPRESS" == true ]; then
if [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
if [ "$LOCAL_OS" == "Qnap" ] || [ "$REMOTE_OS" == "Qnap" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -z --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
elif [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -zz --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
else
Logger "Disabling compression skips on synchronization on [$LOCAL_OS] due to lack of support." "NOTICE"

@ -1255,6 +1255,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1427,6 +1430,9 @@ ENDSSH
*"Android"*)
REMOTE_OS="Android"
;;
*"qnap"*)
REMOTE_OS="Qnap"
;;
*"Linux"*)
REMOTE_OS="Linux"
;;
@ -1934,7 +1940,9 @@ function InitRemoteOSDependingSettings {
fi
fi
if [ "$RSYNC_COMPRESS" == true ]; then
if [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
if [ "$LOCAL_OS" == "Qnap" ] || [ "$REMOTE_OS" == "Qnap" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -z --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
elif [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -zz --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
else
Logger "Disabling compression skips on synchronization on [$LOCAL_OS] due to lack of support." "NOTICE"

@ -1395,6 +1395,9 @@ function GetLocalOS {
*"Android"*)
LOCAL_OS="Android"
;;
*"qnap"*)
LOCAL_OS="Qnap"
;;
*"Linux"*)
LOCAL_OS="Linux"
;;
@ -1565,6 +1568,9 @@ ENDSSH
*"Android"*)
REMOTE_OS="Android"
;;
*"qnap"*)
REMOTE_OS="Qnap"
;;
*"Linux"*)
REMOTE_OS="Linux"
;;
@ -2072,7 +2078,9 @@ function InitRemoteOSDependingSettings {
fi
fi
if [ "$RSYNC_COMPRESS" == true ]; then
if [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
if [ "$LOCAL_OS" == "Qnap" ] || [ "$REMOTE_OS" == "Qnap" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -z --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
elif [ "$LOCAL_OS" != "MacOSX" ] && [ "$REMOTE_OS" != "MacOSX" ]; then
RSYNC_DEFAULT_ARGS=$RSYNC_DEFAULT_ARGS" -zz --skip-compress=3fr/3g2/3gp/3gpp/7z/aac/ace/amr/apk/appx/appxbundle/arc/arj/arw/asf/avi/bz/bz2/cab/cr2/crypt[5678]/dat/dcr/deb/dmg/drc/ear/erf/flac/flv/gif/gpg/gz/iiq/jar/jp2/jpeg/jpg/h26[45]/k25/kdc/kgb/lha/lz/lzma/lzo/lzx/m4[apv]/mef/mkv/mos/mov/mp[34]/mpeg/mp[gv]/msi/nef/oga/ogg/ogv/opus/orf/pak/pef/png/qt/rar/r[0-9][0-9]/rz/rpm/rw2/rzip/s7z/sfark/sfx/sr2/srf/svgz/t[gb]z/tlz/txz/vob/wim/wma/wmv/xz/zip"
else
Logger "Disabling compression skips on synchronization on [$LOCAL_OS] due to lack of support." "NOTICE"
@ -2510,6 +2518,9 @@ function _CheckReplicasLocal {
if [ $MINIMUM_SPACE -ne 0 ]; then
Logger "Checking minimum disk space in local replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
Logger "Cannot get free space." "ERROR" $retval
@ -2766,6 +2777,9 @@ function _CheckReplicasRemoteSub {
if [ $MINIMUM_SPACE -ne 0 ]; then
RemoteLogger "Checking minimum disk space in remote replica [$replicaPath]." "NOTICE"
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $4}')
if [[ $diskSpace == *"%"* ]]; then
diskSpace=$($DF_CMD "$replicaPath" | tail -1 | awk '{print $3}')
fi
retval=$?
if [ $retval -ne 0 ]; then
RemoteLogger "Cannot get free space." "ERROR" $retval
@ -2914,9 +2928,17 @@ function _HandleLocksRemote {
CheckConnectivity3rdPartyHosts
CheckConnectivityRemoteHost
# Check if -A exists on target
ps -A > /dev/null 2>&1
notExistaCapitalA=$?
# Create an array of all currently running pids
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
if [ "$notExistaCapitalA" == "0" ]; then
read -a initiatorRunningPids <<< $(ps -A | tail -n +2 | awk '{print $1}')
else
read -a initiatorRunningPids <<< $(ps -e | tail -n +2 | awk '{print $1}')
fi
# passing initiatorRunningPids as litteral string (has to be run through eval to be an array again)
$SSH_CMD env _REMOTE_TOKEN="$_REMOTE_TOKEN" \
@ -5086,7 +5108,7 @@ function _SoftDeleteLocal {
local retval
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ]; then
if [ "$LOCAL_OS" == "Busybox" ] || [ "$LOCAL_OS" == "Android" ] || [ "$LOCAL_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi
@ -5138,7 +5160,7 @@ function _SoftDeleteRemote {
local retval
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ]; then
if [ "$REMOTE_OS" == "BusyBox" ] || [ "$REMOTE_OS" == "Android" ] || [ "$REMOTE_OS" == "Qnap" ]; then
Logger "Skipping $deletionType deletion on $replicaType. Busybox find -ctime not supported." "NOTICE"
return 0
fi

Loading…
Cancel
Save