User Tools

Site Tools


infra:apps:rclone

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 rsync ou scp scp est simplement de pouvoir

  1. 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 Chocolatey,
  2. De n'avoir qu'une seule syntaxe à appréhender,
  3. 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 patapouf (que l'on pourra appeler tel quel dans les appels, au moment de la synchronisation effective) :

[patapouf]
type = sftp
host = <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

rsync -e ssh -avz --delete-after "/home/source avec espace/" user@ip_du_serveur:"/dossier/destination avec espace/"

Centralisation des utilisateurs

infra/apps/rclone.txt · Last modified: 2023/12/01 14:41 by fred