rsync -vrup --bwlimit=15 -e ssh /home/jim/test jim@bm2i.homelinux.com:/home/jim/testb
or (( ; ; )); do ping -q -c 1 bm2i.homelinux.org >/dev/null 2>&1 if [ $? -eq 0 ]; then echo "Bm2i répond" rsync -vrup --bwlimit=15 -e ssh /home/jim/test jim@bm2i.homelinux.com:/home/jim/testb break fi done
var=0 TANT_QUE (var <> 1) { ping bm2i.homelinux.com SI (réponse_au_ping == 1) var=1 SINON attente_30_seconde fin_de_SI } TANT_QUE (rsync.error==1) { rsync.error=0 lancement de rsync SI (rsync retourne une erreur) rsync.error=1 fin_de_SI } mail à toto@domaine.com le fichier rsync.log
cptSecure=0 pingErr=1 while [[ pingErr != 0 && cptSecure <= 10 ]] do ping -c bm2i.homelinux.com pingErr=$? [[ pingErr != 0 ]] && sleep 15m (( cptSecure = ${cptSecure} + 1 )) done if [[ pingErr != 0 ]] then rsync ... fi
/backupv1.sh ./backupv1.sh: line 5: syntax error in conditional expression ./backupv1.sh: line 5: syntax error near `10' ./backupv1.sh: line 5: `while [[ pingErr != 0 && cptSecure <= 10 ]]'
#!/bin/sh cptSecure=0 pingErr=1 while [[ pingErr -ne 0 && cptSecure -le 10 ]] do ping -c bm2i.homelinux.com pingErr=$? [[ pingErr -ne 0 ]] && sleep 10m (( cptSecure -eq ${cptSecure} + 1 )) done if [[ pingErr -ne 0 ]] then rsync -vrup --bwlimit=15 -e ssh /home/jim/test jim@bm2i.homelinux.com:/home/jim/testb fi
/backupv2.sh ping: bad number of packets to transmit.
#!/bin/sh pingErr=1 rsyncErr=1 while [[ $pingErr != 0 ]] do ping -c 1 bm2i.homelinux.com pingErr=$? if [[ $pingErr != 0 ]] then echo "$?" echo $pingErr echo "Bm2i is down, waiting !!!!" sleep 1m fi done while [[ $rsyncErr != 0 ]] do echo "Start rsync" rsync -vrup --timeout=10 --bwlimit=35 -e ssh /home/jim/siteweb jim@bm2i.homelinux.com:/home/jim/backup rsyncErr=$? if [[ $rsyncErr != 0 ]] then echo "interuption, waiting for Bm2i.homelinux.com......" sleep 1m echo "wait 1 min." fi done echo "Transfer complet"
#!/bin/sh LOG=/var/log/backup.log # Decommenter les 2 lignes ci-dessous pour que le log se fasse dans le fichier de log #exec 2>&1 #exec 1>$LOG errcode=1 while [ $errcode -ne 0 ] ; do echo "$date - Debut de sauvegarde" RESULTAT="$(ping -c 1 bm2i.homelinux.com 2> /dev/null && rsync -vrup --timeout=10 --bwlimit=35 -e ssh /home/jim/siteweb jim@bm2i.homelinux.com:/home/jim/backup | grep sent)" errcode=$? if [ $errcode -ne 0 ] ; then [ "$RESULTAT" != "" ] && echo -e "$(date) : transfert interrompu sur code $errorcode\n$RESULTAT" sleep 1m fi done echo "$(date) : $RESULTAT" echo "$(date) : transfert complété"