eseguire nuovamente un command una volta che si arresta (rsync, FreeBSD)

Ho iniziato a fare backup tramite rsync in un server remoto. Questo funziona tutto bene e buono, ma 40 gig prendere il loro tempo e come ho un IP dinamico si interrompe each giorno. Quindi each mattina quando mi sveglio riavvii rsync (se non lo dimentico).

Potrei usare già un cronjob ma vorrei davvero eseguirlo subito dopo che si ferma. C'è un modo per farlo?

  • Come mantenere Rsync da chown'ing file trasferiti?
  • Come posso riservare la width di banda per rsync?
  • Distribuzione di file a più server
  • fare un cronjob attendere che il lavoro rsync precedente finisca
  • Rsync-like trasferimento di file senza rsyncd o sshd sull'estremità remota
  • Rsync e wildcards
  • Come sincronizzare il repository SVN con un file system remoto FTP
  • Problema di connessione di SSH dopo l'utilizzo di rsync
  • 2 Solutions collect form web for “eseguire nuovamente un command una volta che si arresta (rsync, FreeBSD)”

    #!/bin/bash while true do echo "your action (eg, rsync replacing this line)" #If clean exit, stop running if [[ $? == 0 ]] then break fi #speed throttling sleep 10 done 

    Sì, each volta che il rsync o qualsiasi command si ferma o viene interrotto in modo sbagliato, dà un segnale, che non è uguale a 0 (0 significa successo, altrimenti errore).

    basta scrivere uno script che controlla lo stato di output del command e lo salva in un file. quindi continuate a controllare il file dopo, per esempio 5 secondi. per quanto lo stato esistente diventa non zero, riavviare il rsync e mettere 0 nello stato di output manualmente .. continua a continuare e su.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.