====== rclone ====== https://rclone.org/ est une application écrite en Go (et compatible avec tous les systèmes d'exploitation). Ce qui est sensé faciliter l'ensemble des opérations de transferts (SSH inclus), sans autre dépendance qu'un binaire à placer au bon endroit. L'avantage de passer par celle-ci plutôt que par [[https://doc.ubuntu-fr.org/rsync|rsync]] ou [[toolbox:scp]] [[https://fr.wikipedia.org/wiki/Secure_copy|scp]] est simplement de pouvoir - Le déployer facilement sur n'importe quel système (ce qui me permet de dégager WSL sur Windows pour ne passer que par [[https://community.chocolatey.org/packages/rclone|Chocolatey]], - De n'avoir qu'une seule syntaxe à appréhender, - Il est multithreadé : plutôt que d'attendre que le transfert d'un fichier soit terminé pour passer au suivant, il envoie nativement quatre fichiers simultanément. ===== Configuration ===== La configuration peut être auto-générée grâce à la commande //**rclone config**//. Après avoir répondu aux quelques questions, un fichier sera généré et placé dans le répertoire //**~/.config/rclone/rclone.conf**//. Ma configuration est la suivante pour contacter l'hôte [[infra:patapouf|patapouf]] (que l'on pourra appeler tel quel dans les appels, au moment de la synchronisation effective) : [patapouf] type = sftp host = key_file = ~/.ssh/id_ed25519 known_hosts_file = ~/.ssh/known_hosts skip_links = true idle_timeout = 30s shell_type = unix ===== sync ===== La commande `sync` fait en sorte que la source et la destination soient identiques, en ne modifiant que la destination. Attention que la toute première synchronisation peut potentiellement __SUPPRIMER__ des données. Faites bien attention à utiliser les modes interactive et dry-run lors du premier démarrage. Faites également attention à ce que la __SOURCE__ soit spécifiée AVANT la __DESTINATION.__ rclone sync /Users/fred patapouf:/mnt/users/boo --exclude ".DS_Store" --exclude "Library**" --exclude ".Trash**" --progress ===== Notes ===== * Sur macOS, le Terminal a besoin d'un accès complet au disque. Ceci peut être configuré dans l'écran [[https://support.apple.com/en-us/HT210595|"Sécurité et Confidentialité" des réglages système]]. * L'équivalent rsync serait le suivant : rsync -e ssh -avz --delete-after "/home/source avec espace/" user@ip_du_serveur:"/dossier/destination avec espace/" ===== Centralisation des utilisateurs =====