====== Rsync, la copie de fichier magique ======
Un ''man rsync'' permet de tirer profit de la puissance de l'outil. Utilisable sur l'ordi (alternative à cp) et à distance.
La commande qui va bien :
rsync -Pha --delete-after source/ destination/
* -P : progression globale du transfert
* -h : human readeable, pour afficher des chiffres lisibles
* -a : archive mode. Equals -rlptgoD (no -H,-A,-X), donc récursif, copie les symlinks de la même façon, préserve les permissions, la date de modification, les groupes, les propriétaires et ''--devices --specials''. C'est assez complet.
* -s : empêche les interprétations de caractères dans les noms de fichiers sauf le joker *
* --delete-after : à la fin du transfert, supprime les fichiers dans le dossier de destination ne se trouvant pas dans le dossier source.
En ligne, ajouter -z pour comprimer les data. Le nom du serveur est suivi de deux points. Si l'hostname est entré dans ''.ssh/config'' (plus simple pour gérer port et utilisateur) :
rsync -Phaz hostname:source/ destination/
Si une erreur du type ''IO error encountered -- skipping file deletion'' apparait, c'est possiblement parce que rsync a rencontré des fichiers sur lesquels ils n'avait pas le droit d'agir ; du coup il s'arrête avant de détruire les fichiers disparus. Pour passer outre, ajouter ''--ignore-errors'' :
rsync -Pha --delete-after --ignore-errors source/ destination/