From 8805b6e8ec957c152c3dd8ac80dcaac57cf7ec46 Mon Sep 17 00:00:00 2001 From: USER Date: Sat, 4 Feb 2023 20:55:58 +0000 Subject: [PATCH] . --- Notes/git1.md | 50 +++++++ Notes/git2.md | 55 ++++++++ alpine/alpy | 43 ++++++ bin/SPECIAL.pub | 1 + bin/cPull | 346 ++++++++++++++++++++++++++++++++++++++++++++++ bin/cPull2 | 358 ++++++++++++++++++++++++++++++++++++++++++++++++ bin/crontab.txt | 6 + 7 files changed, 859 insertions(+) create mode 100644 Notes/git1.md create mode 100644 Notes/git2.md create mode 100755 alpine/alpy create mode 100644 bin/SPECIAL.pub create mode 100755 bin/cPull create mode 100755 bin/cPull2 create mode 100644 bin/crontab.txt diff --git a/Notes/git1.md b/Notes/git1.md new file mode 100644 index 0000000..f1ed176 --- /dev/null +++ b/Notes/git1.md @@ -0,0 +1,50 @@ +~/.ssh/config + +Host 10.168.0.129 + + Hostname 10.168.0.129 + + IdentityFile ~/.mykeys/gitkey + + +------------- + +git config http.sslVerify false + +----------- + +GIT_SSH_COMMAND="ssh -i ~/.ssh/id_rsa_example" git clone xxxxxx + +---------------- + +git config core.sshCommand "ssh -i ~/.mykeys/gitkey -F /dev/null" + +------- + + git config --global user.email "cccccc" + + git config --global user.name "cccccc" + +-------- +https://stackoverflow.com/questions/4565700/how-to-specify-the-private-ssh-key-to-use-when-executing-shell-command-on-git + + +--------------- + +git config + +[core] + repositoryformatversion = 0 + filemode = true + bare = false + logallrefupdates = true + sshCommand = ssh -i ~/.ssh/KEYS -F /dev/null +[remote "origin"] + url = ssh://git@DOMAIN:SSH_PORT/GIT_USER/GIT_REPO.git + fetch = +refs/heads/*:refs/remotes/origin/* + url = git@github.com:GIT_USER/GIT_REPO.git +[pull] + rebase = false +[branch "main"] + remote = origin + merge = refs/heads/main diff --git a/Notes/git2.md b/Notes/git2.md new file mode 100644 index 0000000..9d7399e --- /dev/null +++ b/Notes/git2.md @@ -0,0 +1,55 @@ + + + +USER1= + +USER2= + +PRIVATEIP= + +REPO= + +git init + +git config --global init.defaultBranch main + +touch README.md + +git add README.md + +git commit -m "first commit" + +git remote add origin http://${PRIVATEIP}/git/${USER1}/${REPO}.git + +git remote set-url origin ssh://git@${PRIVATEIP}:3022/${USER1}/${REPO}.git + +git remote set-url --add origin git@github.com:${USER2}/${REPO}.git + +git branch -M main + +git push -u origin main + + + + + + + +---- email setup git config --global user.email "USER@DOMAIN.com" + +git config --global user.name "USER" + +---- use thru tunnel git config --global http.sslverify false + +PORT=xxxx REMOTE=user@domain + +ssh ${REMOTE} -p ${PORT} -D 9999 -N + +git config --global http.sslverify false + +PRIVATEIP=bbbb + +git -c http.proxy=socks5://localhost:9999 clone http://${PRIVATEIP}/git/${USER1}/tester.git + + + diff --git a/alpine/alpy b/alpine/alpy new file mode 100755 index 0000000..93b0f22 --- /dev/null +++ b/alpine/alpy @@ -0,0 +1,43 @@ +# Example answer file for setup-alpine script +# If you don't want to use a certain option, then comment it out + +# Use US layout with US variant +KEYMAPOPTS="gb gb-extd" + +# Set hostname to alpine-test +HOSTNAMEOPTS="-n alpine-test" + +# Contents of /etc/network/interfaces +INTERFACESOPTS="auto lo +iface lo inet loopback + +auto eth0 +iface eth0 inet dhcp + hostname alpine-test +" + +# Search domain of example.com, Google public nameserver +DNSOPTS="-d example.com 8.8.8.8" + +# Set timezone to UTC +TIMEZONEOPTS="-z Europe/London" + +# set http/ftp proxy +PROXYOPTS="none" + +# Add a random mirror +APKREPOSOPTS="-1" + +# Install Openssh +SSHDOPTS="-c openssh" + +# Use openntpd +NTPOPTS="-c chrony" + +# Use /dev/sda as a data disk +DISKOPTS="-m sys /dev/sda" + +# Setup in /media/sdb1 +#LBUOPTS="/media/sdb1" +#APKCACHEOPTS="/media/sdb1/cache" + diff --git a/bin/SPECIAL.pub b/bin/SPECIAL.pub new file mode 100644 index 0000000..c793234 --- /dev/null +++ b/bin/SPECIAL.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEpGEI6xtINZvhxH81z5sM75uWC7/gEoJ+f0NLsRbRu2 donkey@palmers2 diff --git a/bin/cPull b/bin/cPull new file mode 100755 index 0000000..7b8960e --- /dev/null +++ b/bin/cPull @@ -0,0 +1,346 @@ +#!/bin/sh +# +# Common environment variables +# + +set_constants () { + MYNAME=`uname -n` + DATENOW=`date '+%Y%m%d-%H%M%S'` + + BASE= + ZCBIN=${BASE}/zTools/zConfig/bin + ZCDOT=${BASE}/zTools/zConfig/dotfiles + ZCETC=${BASE}/zTools/zConfig/etc + ZCGNOME=${BASE}/zTools/zConfig/gnome + ZCKICK=${BASE}/zTools/zConfig/kick + ZCSYN=${BASE}/zTools/zConfig/syn + ZCAPPDIR=${BASE}/zTools/zGold/Apps/LinuxApps + ZPCETC=${BASE}/zTools/zPrivateConfig/etc + + ZDOCKER=${BASE}/zTools/zDocker + + APPDIR=${BASE}/zTools/zGold/Apps/LinuxApps + THIS_SCRIPT=`basename $0` + THIS_PATH=`dirname $0` + LOCK=/var/tmp/${THIS_SCRIPT}.lock + LOG=/var/tmp/${THIS_SCRIPT}.log + ERROR=/var/tmp/${THIS_SCRIPT}.error.$$ + + APP=${THIS_SCRIPT} + VERSION= +} + + +################### shared functions below + +myip () { + MYEXTERNALIP=$(dig +short myip.opendns.com @resolver1.opendns.com) + MYFULLIP=$(ip route get 8.8.8.8 | sed -n '/src/{s/.*src *\([^ ]*\).*/\1/p;q}') + MYNETWORK=$(echo ${MYFULLIP}| cut -f1-3 -d.) + MYIP=$(echo ${MYFULLIP}| cut -f4 -d.) + echo "MYEXTERNALIP ${MYEXTERNALIP}" + echo "MYFULLIP ${MYFULLIP}" + echo "MYIP ${MYIP}" + echo -e "MYNETWORK ${MYNETWORK}\n" + export MYFULLIP MYNETWORK MYIP MYEXTERNALIP +} + +check_rsync () { + if [ -f /bin/rsync ] + then + RSYNC=/bin/rsync + fi + + if [ -f /usr/bin/rsync ] + then + RSYNC=/usr/bin/rsync + else + echo "No rsync present" + exit 1 + fi +} + +check_keystore () { + if [ ! -d ${KEYSTORE} ] + then + mkdir -p ${KEYSTORE} + fi +} + +check_gitkey () { + if [ ! -f ${GITKEY} ] + then + ssh-keygen -o -a 100 -t ed25519 -f ${GITKEY} -N "" -C git@${MYNAME} + fi +} + +check_rsynckey () { + if [ ! -f ${RSYNCKEY} ] + then + ssh-keygen -o -a 100 -t ed25519 -f ${RSYNCKEY} -N "" -C rsync@${MYNAME} + fi +} + +## +## +## +## +## +## + +check_lock () { + echo -e "\n\n--------SCRIPT $0 starting" + + FAILUREVALUE=600 + DATENOW=$(date +'%s') + DATEFAILED=$((${DATENOW} - ${FAILUREVALUE})) + + if [ -f $LOCK ] + then + . $LOCK + # if script has no date for some reason then use DATEFAILED and reset eveyrthing + SCRIPTDATE="${SCRIPTDATE:-$DATEFAILED}" + EXPIRED=$(($DATENOW - $SCRIPTDATE)) + + echo " EXPIRED: $EXPIRED SCRIPTDATE:$SCRIPTDATE DATENOW: $DATENOW DATEFAILED:$DATEFAILED" + if [ $EXPIRED -gt ${FAILUREVALUE} ] + then + rm -f $LOCK ; rm -f $LOCK + echo "Cleared ${LOCK} for ${MYNAME} " + killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; + exit 1 + else + echo "still ${THIS_SCRIPT} running on ${MYNAME} " + echo "The lock file is ${LOCK}" + exit 1 + fi + else + echo "SCRIPTDATE=`date +'%s'`" > ${LOCK} + fi +} + +rsync_pull_without_key () { + echo "PORT to be used ${PORT}" + + case ${MYNAME} in + FIRE6666| KHS666| FIRE660 | FIRE661 | FIRE662 | FIRE663) + ${RSYNC} -aq --progress --port=${PORT} --contimeout=2 --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="*AppImage*" \ + --exclude="*appimage*" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + --exclude="*GOLDVirtuals*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + *) + ${RSYNC} -aq --progress --port=${PORT} --contimeout=2 --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + esac + + if [ $? = 0 ] + then + echo "rsync was success" + chmod 4755 ${ZCBIN}/.specialOn + chmod 4755 ${ZCBIN}/.specialOff + rm -rf /root/.sshkeys + fix_cron + rm ${LOCK} + break 2 + fi +} + +rsync_pull_with_key () { + echo "RARGS to be used ${RARGS} and port ${PORT}" + + case ${MYNAME} in + FIRE6666| KHS666| FIRE660 | FIRE661 | FIRE662 | FIRE663) + ${RSYNC} -aq --progress -e "$RARGS" --port=${PORT} --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="*AppImage*" \ + --exclude="*appimage*" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + --exclude="*GOLDVirtuals*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + *) + ${RSYNC} ${RSYNC_OPTS} -e "$RARGS" --port=${PORT} \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + esac + + if [ $? = 0 ] + then + echo "rsync was success" + chmod 4755 ${ZCBIN}/.specialOn + chmod 4755 ${ZCBIN}/.specialOff + rm -rf /root/.sshkeys + fix_cron + rm ${LOCK} + break 2 + fi +} + +fix_cron () { +chmod -R 755 ${RSYNCDEST} +chown -R root:root ${RSYNCDEST} + +if [ -f /etc/os-release ] +then + . /etc/os-release +fi + +case ${ID} in + alpine | debian | ubuntu) + echo "OS found is ${ID}" + su root -c "crontab -u root ${ZPCETC}/crontabs/DEBcrontab" + ;; + centos | fedora) + echo "OS found is ${ID}" + su root -c "crontab -u root ${ZPCETC}/crontabs/GOLDcrontab" + ;; + *) + echo "OS NOT RECOGNISED" + ;; +esac +} + + +###### +# Main script below +##### +KEYSTORE=~/.mykeys +GITKEY=${KEYSTORE}/gitkey +RSYNCKEY=${KEYSTORE}/rsynckey +BASTIONKEY=${KEYSTORE}/donkeykey +STATIC=/static + +set_constants +check_rsync +check_keystore +check_gitkey +check_rsynckey +check_lock + +##### +# custom code +##### +ZGOLD=/zTools/zGold +ZCONFIG=/zTools/zConfig +ZANSIBLE=/zTools/zAnsible +ZWINDOWSSHARE=/zTools/zWindowsShare +ZUSERCONFIG=/zTools/zUserConfig +ZPRIVATECONFIG=/zTools/zPrivateConfig +ZSHARED=/zTools/zShared + +case $1 in + gold) + RSYNCSOURCE="public" + RSYNCDEST=${ZGOLD} + if [ ! -d ${ZGOLD} ] + then + mkdir -p ${ZGOLD} + fi + ;; + windows) + RSYNCSOURCE="mywindowsshare" + RSYNCDEST=${ZWINDOWSSHARE} + if [ ! -d ${ZWINDOWSSHARE} ] + then + mkdir -p ${ZWINDOWSSHARE} + fi + ;; + ansible) + RSYNCSOURCE="myansible" + RSYNCDEST=${ZANSIBLE} + if [ ! -d ${ZANSIBLE} ] + then + mkdir -p ${ZANSIBLE} + fi + ;; + userconfig) + RSYNCSOURCE="myuserconfig" + RSYNCDEST=${ZUSERCONFIG} + if [ ! -d ${ZUSERCONFIG} ] + then + mkdir -p ${ZUSERCONFIG} + fi + ;; + privateconfig) + RSYNCSOURCE="myprivateconfig" + RSYNCDEST=${ZPRIVATECONFIG} + if [ ! -d ${ZPRIVATECONFIG} ] + then + mkdir -p ${ZPRIVATECONFIG} + fi + ;; + zshared) + RSYNCSOURCE="myzshared" + RSYNCDEST=${ZSHARED} + if [ ! -d ${ZSHARED} ] + then + mkdir -p ${ZSHARED} + fi + ;; + *) + RSYNCSOURCE="myconfig" + RSYNCDEST=${ZCONFIG} + if [ ! -d ${ZCONFIG} ] + then + mkdir -p ${ZCONFIG} + fi + ;; +esac + +. /root/.cpullenv + +#DESTINATIONS="xxxxxxxxxxxxx yyyy" +#RSYNC_PORT= +#SSH_PORT= +#SSH_USER + +cd ${RSYNCDEST} +for i in $DESTINATIONS +do + echo "\n\n------------------------ Trying $i" + SOURCE=$i + USER=${SSH_USER} + + # PORT=${RSYNC_PORT} + # RSYNC_OPTS="-aqP --progress --delete-after --delete-excluded --contimeout=2" + # echo "\n*********** Trying ${i} withOUT key on ${PORT} and ${USER} for ${RSYNCDEST} ******" + # rsync_pull_without_key + + PORT=${SSH_PORT} + RARGS="ssh -i ${RSYNCKEY} -p${PORT} -l ${USER} -o ConnectTimeout=5 -o CheckHostIP=no -o StrictHostKeyChecking=no" + RSYNC_OPTS="-aqP --progress --delete-after --delete-excluded" + echo "\n*********** Trying ${i} with key on ${PORT} and ${USER} for ${RSYNCDEST} ******" + rsync_pull_with_key +done + + + + +##### +rm ${LOCK} +exit 0 diff --git a/bin/cPull2 b/bin/cPull2 new file mode 100755 index 0000000..193d77e --- /dev/null +++ b/bin/cPull2 @@ -0,0 +1,358 @@ +#!/bin/sh +# +# Common environment variables +# + +set_constants () { + MYNAME=`uname -n` + DATENOW=`date '+%Y%m%d-%H%M%S'` + + BASE= + ZCBIN=${BASE}/zTools/zConfig/bin + ZCDOT=${BASE}/zTools/zConfig/dotfiles + ZCETC=${BASE}/zTools/zConfig/etc + ZCGNOME=${BASE}/zTools/zConfig/gnome + ZCKICK=${BASE}/zTools/zConfig/kick + ZCSYN=${BASE}/zTools/zConfig/syn + ZCAPPDIR=${BASE}/zTools/zGold/Apps/LinuxApps + ZPCETC=${BASE}/zTools/zPrivateConfig/etc + + ZDOCKER=${BASE}/zTools/zDocker + + APPDIR=${BASE}/zTools/zGold/Apps/LinuxApps + THIS_SCRIPT=`basename $0` + THIS_PATH=`dirname $0` + LOCK=/var/tmp/${THIS_SCRIPT}.lock + LOG=/var/tmp/${THIS_SCRIPT}.log + ERROR=/var/tmp/${THIS_SCRIPT}.error.$$ + + APP=${THIS_SCRIPT} + VERSION= +} + + +################### shared functions below + +myip () { + MYEXTERNALIP=$(dig +short myip.opendns.com @resolver1.opendns.com) + MYFULLIP=$(ip route get 8.8.8.8 | sed -n '/src/{s/.*src *\([^ ]*\).*/\1/p;q}') + MYNETWORK=$(echo ${MYFULLIP}| cut -f1-3 -d.) + MYIP=$(echo ${MYFULLIP}| cut -f4 -d.) + echo "MYEXTERNALIP ${MYEXTERNALIP}" + echo "MYFULLIP ${MYFULLIP}" + echo "MYIP ${MYIP}" + echo -e "MYNETWORK ${MYNETWORK}\n" + export MYFULLIP MYNETWORK MYIP MYEXTERNALIP +} + +check_rsync () { + if [ -f /bin/rsync ] + then + RSYNC=/bin/rsync + fi + + if [ -f /usr/bin/rsync ] + then + RSYNC=/usr/bin/rsync + else + echo "No rsync present" + exit 1 + fi +} + +check_keystore () { + if [ ! -d ${KEYSTORE} ] + then + mkdir -p ${KEYSTORE} + fi +} + +check_gitkey () { + if [ ! -f ${GITKEY} ] + then + ssh-keygen -o -a 100 -t ed25519 -f ${GITKEY} -N "" -C git@${MYNAME} + fi +} + +check_rsynckey () { + if [ ! -f ${RSYNCKEY} ] + then + ssh-keygen -o -a 100 -t ed25519 -f ${RSYNCKEY} -N "" -C rsync@${MYNAME} + cp -p ${RSYNCKEY}.pub ${KEYSTORE}/_r${MYNAME}.pub + fi +} + +## +## +## +## +## +## + +check_lock () { + echo -e "\n\n--------SCRIPT $0 starting" + + FAILUREVALUE=600 + DATENOW=$(date +'%s') + DATEFAILED=$((${DATENOW} - ${FAILUREVALUE})) + + if [ -f $LOCK ] + then + . $LOCK + # if script has no date for some reason then use DATEFAILED and reset eveyrthing + SCRIPTDATE="${SCRIPTDATE:-$DATEFAILED}" + EXPIRED=$(($DATENOW - $SCRIPTDATE)) + + echo " EXPIRED: $EXPIRED SCRIPTDATE:$SCRIPTDATE DATENOW: $DATENOW DATEFAILED:$DATEFAILED" + if [ $EXPIRED -gt ${FAILUREVALUE} ] + then + rm -f $LOCK ; rm -f $LOCK + echo "Cleared ${LOCK} for ${MYNAME} " + killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; killall ${THIS_SCRIPT}; + exit 1 + else + echo "still ${THIS_SCRIPT} running on ${MYNAME} " + echo "The lock file is ${LOCK}" + exit 1 + fi + else + echo "SCRIPTDATE=`date +'%s'`" > ${LOCK} + fi +} + +rsync_pull_without_key () { + echo "PORT to be used ${PORT}" + + case ${MYNAME} in + FIRE6666| KHS666| FIRE660 | FIRE661 | FIRE662 | FIRE663) + ${RSYNC} -aq --progress --port=${PORT} --contimeout=2 --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="*AppImage*" \ + --exclude="*appimage*" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + --exclude="*GOLDVirtuals*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + *) + ${RSYNC} -aq --progress --port=${PORT} --contimeout=2 --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + esac + + if [ $? = 0 ] + then + echo "rsync was success" + chmod 4755 ${ZCBIN}/.specialOn + chmod 4755 ${ZCBIN}/.specialOff + rm -rf /root/.sshkeys + fix_cron + rm ${LOCK} + break 2 + fi +} + +rsync_pull_with_key () { + echo "RARGS to be used ${RARGS} and port ${PORT}" + + case ${MYNAME} in + FIRE6666| KHS666| FIRE660 | FIRE661 | FIRE662 | FIRE663) + ${RSYNC} -aq --progress -e "$RARGS" --port=${PORT} --delete-after --delete-excluded \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="*AppImage*" \ + --exclude="*appimage*" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + --exclude="*GOLDVirtuals*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + *) + ${RSYNC} ${RSYNC_OPTS} -e "$RARGS" --port=${PORT} \ + --exclude="@*" \ + --exclude=".stversions" \ + --exclude="CCTV*" \ + --exclude="*Citrix*" \ + --exclude="*WinApps*" \ + --exclude="*wordpress*" \ + $SOURCE::${RSYNCSOURCE} ${RSYNCDEST} + ;; + esac + + if [ $? = 0 ] + then + echo "rsync was success" + chmod 4755 ${ZCBIN}/.specialOn + chmod 4755 ${ZCBIN}/.specialOff + rm -rf /root/.sshkeys + fix_cron + rm ${LOCK} + break 2 + fi +} + +fix_cron () { +chmod -R 755 ${RSYNCDEST} +chown -R root:root ${RSYNCDEST} + +if [ -f /etc/os-release ] +then + . /etc/os-release +fi + +case ${ID} in + alpine | debian | ubuntu) + echo "OS found is ${ID}" + if [ -s ${ZPCETC}/crontabs/DEBcrontab ] + then + su root -c "crontab -u root ${ZPCETC}/crontabs/DEBcrontab" + fi + ;; + centos | fedora) + echo "OS found is ${ID}" + if [ -s ${ZPCETC}/crontabs/GOLDcrontab ] + then + su root -c "crontab -u root ${ZPCETC}/crontabs/GOLDcrontab" + fi + ;; + *) + echo "OS NOT RECOGNISED" + ;; +esac +} + + +###### +# Main script below +##### +KEYSTORE=~/.mykeys +GITKEY=${KEYSTORE}/github +RSYNCKEY=${KEYSTORE}/rsync +BASTIONKEY=${KEYSTORE}/bastion +STATIC=/static + +set_constants +check_rsync +check_keystore +check_gitkey +check_rsynckey +check_lock + +##### +# custom code +##### +ZGOLD=/zTools/zGold +ZCONFIG=/zTools/zConfig +ZANSIBLE=/zTools/zAnsible +ZWINDOWSSHARE=/zTools/zWindowsShare +ZUSERCONFIG=/zTools/zUserConfig +ZPRIVATECONFIG=/zTools/zPrivateConfig +ZSHARED=/zTools/zShared + +case $1 in + gold) + RSYNCSOURCE="public" + RSYNCDEST=${ZGOLD} + if [ ! -d ${ZGOLD} ] + then + mkdir -p ${ZGOLD} + fi + ;; + windows) + RSYNCSOURCE="mywindowsshare" + RSYNCDEST=${ZWINDOWSSHARE} + if [ ! -d ${ZWINDOWSSHARE} ] + then + mkdir -p ${ZWINDOWSSHARE} + fi + ;; + ansible) + RSYNCSOURCE="myansible" + RSYNCDEST=${ZANSIBLE} + if [ ! -d ${ZANSIBLE} ] + then + mkdir -p ${ZANSIBLE} + fi + ;; + userconfig) + RSYNCSOURCE="myuserconfig" + RSYNCDEST=${ZUSERCONFIG} + if [ ! -d ${ZUSERCONFIG} ] + then + mkdir -p ${ZUSERCONFIG} + fi + ;; + privateconfig) + RSYNCSOURCE="myprivateconfig" + RSYNCDEST=${ZPRIVATECONFIG} + if [ ! -d ${ZPRIVATECONFIG} ] + then + mkdir -p ${ZPRIVATECONFIG} + fi + ;; + zshared) + RSYNCSOURCE="myzshared" + RSYNCDEST=${ZSHARED} + if [ ! -d ${ZSHARED} ] + then + mkdir -p ${ZSHARED} + fi + ;; + *) + RSYNCSOURCE="myconfig" + RSYNCDEST=${ZCONFIG} + if [ ! -d ${ZCONFIG} ] + then + mkdir -p ${ZCONFIG} + fi + ;; +esac + +if [ -s /root/.cpullenv ] +then + . /root/.cpullenv +else + echo "UPDATE the file /root/.cpullenv" + echo "DESTINATIONS="xxxxxxxxxxxxx yyyy"" > /root/.cpullenv + echo "RSYNC_PORT=" >> /root/.cpullenv + echo "SSH_PORT=" >> /root/.cpullenv + echo "SSH_USER" >> /root/.cpullenv + exit 1 +fi + +cd ${RSYNCDEST} +for i in $DESTINATIONS +do + echo "\n\n------------------------ Trying $i" + SOURCE=$i + USER=${SSH_USER} + + # PORT=${RSYNC_PORT} + # RSYNC_OPTS="-aqP --progress --delete-after --delete-excluded --contimeout=2" + # echo "\n*********** Trying ${i} withOUT key on ${PORT} and ${USER} for ${RSYNCDEST} ******" + # rsync_pull_without_key + + PORT=${SSH_PORT} + RARGS="ssh -i ${RSYNCKEY} -p${PORT} -l ${USER} -o ConnectTimeout=5 -o CheckHostIP=no -o StrictHostKeyChecking=no" + RSYNC_OPTS="-aqP --progress --delete-after --delete-excluded" + echo "\n*********** Trying ${i} with key on ${PORT} and ${USER} for ${RSYNCDEST} ******" + rsync_pull_with_key +done + + + + +##### +rm ${LOCK} +exit 0 diff --git a/bin/crontab.txt b/bin/crontab.txt new file mode 100644 index 0000000..fd0bd38 --- /dev/null +++ b/bin/crontab.txt @@ -0,0 +1,6 @@ +MAILTO="" +PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin +#minute hour mday month wday who command +0 0 * * 4 root /usr/syno/bin/synoschedtask --run id=1 +0 0 10 * * root /usr/syno/bin/synoschedtask --run id=2 +*/2 * * * * root touch /root/crap