Je lance un serveur de jeu avec un plugin qui place des sauvegardes de serveur toutes les heures dans/backups. Après 1 jour, le plug-in enregistre 2 sauvegardes/jour et supprime le reste. Je souhaite synchroniser ce répertoire de sauvegarde sur un serveur distant, mais uniquement pour les fichiers de plus de 2 jours, de sorte qu'il ne synchronise pas les fichiers qui seront éventuellement supprimés à la fin de la journée.
Pour ce faire, je lance ceci:
find /path/backups/ -type f -mtime 2 -exec rsync -vPhd -e "ssh -p 512" /path/backups/ --delete --ignore-existing me@Host:/remote/path/server-backups/ \;
Cela provoque la synchronisation de tous les fichiers dans/backups/avec/server-backups/au lieu de fichiers de plus de 2 jours. Comment pourrais-je résoudre ce problème? Merci pour l'aide!
Natim a raison en ce que {} doit être utilisé pour transmettre les noms de fichiers à rsync. Il n'est pas nécessaire de passer à scp. Utilisez simplement le {} avec rsync comme dans:
find /path/backups/ -type f -mtime +2 -exec rsync -vPhd -e "ssh -p 512" {} --delete --ignore-existing me@Host:/remote/path/server-backups/ \;
Note: j'ai aussi changé
-mtime 2
à
-mtime +2
comme vous déclarez des fichiers de plus de 2 jours. Vous devrez peut-être régler cela en fonction de vos besoins.