GNU/Linux >> Tutoriels Linux >  >> Linux

Comment appeler à plusieurs reprises rsync jusqu'à ce que les fichiers soient transférés avec succès

Solution 1 :

Si vous synchronisez tout en une seule synchronisation, appelez rsync en boucle jusqu'à ce que rsync vous donne un code de retour réussi.

Quelque chose comme :

RC=1 
while [[ $RC -ne 0 ]]
do
   rsync -a .....   
   RC=$?
done

Cela bouclera, appelant rsync, jusqu'à ce qu'il donne un code de retour de 0. Vous voudrez peut-être ajouter un sommeil là-dedans pour éviter de DOSer votre serveur.

Solution 2 :

J'ai rencontré ce même problème il y a quelque temps. À la fin, j'ai écrit quelque chose de similaire à la réponse de David, mais je l'ai un peu améliorée avec un maximum de tentatives, répondant à Ctrl-C, etc.:http://blog.iangreenleaf.com/2009/03/rsync-and-retrying- jusqu'à ce que nous l'obtenions.html.

Solution 3 :

mettre le tout ensemble avec sshpass

while ! sshpass -p 'xxxx' rsync --partial --append-verify --progress -a -e 'ssh -p 22' /source/ [email protected]:/dest/; do sleep 5;done

Linux
  1. Comment utiliser Rsync pour synchroniser des fichiers nouveaux ou modifiés/modifiés sous Linux

  2. Journaliser uniquement les fichiers transférés avec Rsync ?

  3. Comment copier rapidement un grand nombre de fichiers entre deux serveurs

  4. Comment supprimer les fichiers ._ dans un répertoire ? Ubuntu

  5. Linux NTFS vers NTFS rsync recopiant à plusieurs reprises des fichiers

Comment utiliser rsync pour exclure des fichiers et des répertoires dans le transfert de données

Comment exclure des fichiers et des répertoires avec Rsync

Comment transférer des fichiers avec Rsync sur SSH

Reprendre les fichiers partiellement transférés via SSH à l'aide de Rsync

Comment sauvegarder des fichiers et des répertoires à l'aide de Rsync sous Linux

Comment configurer une sauvegarde avec rsync sur Ubuntu 18.04