rclone pour copier vos sauvegardes de Linux vers Windows

J’avais tenté de mettre en œuvre rclone, il y a quelques années, pour des transferts de Linux vers Windows. A l’époque, rclone sous Windows utilisait cygwin. Cela ne me rassurait pas particulièrement quant à sa fiabilité. J’ai eu la bonne surprise en l’installant ce matin sur mon serveur Windows de constater qu’il était désormais compilé nativement pour les environnements X64.

rclone est un logiciel Open Source permettant de synchroniser deux répertoires en ne prenant que les fichiers ayant été modifiés. C’est l’équivalent de robocopy sous Windows, en beaucoup plus rapide. Il prend en charge notamment les protocoles SMB/CIFS, SFTP et NFS, FTP, WebDav.

rclone pour copier vos sauvegardes de Linux vers Windows

Après avoir téléchargé et dézippé l’archive de rclone dans c:\tools\rclone, j’ai dû configurer le logiciel.

Générer un jeu de clés ssh

Incapable d’utiliser les jeux de clés Putty, il a fallu très temporairement retourner sur Linux générer un jeu de clé avec OpenSSH :

ssh-keygen -b

Le jeu de clés privée et publique se crée dans votre dossier ~/.ssh. Vous devez alors ajouter la clé publique au fichier ~/.ssh/authorized_keys :

cd ~/.ssh
cat id_rsa.pub >> authorized_keys

 J’ai transféré la clé privée sur la machine Windows dans mon dossier d:\config\ssh. Une fois le transfert effectué, j’ai supprimé les deux clés de mon serveur Linux :

rm -f ~/.ssh/id_rsa*

Configurer rclone

Vous pouvez configurer rclone de manière interactive :

cd /d c:/tools/rclone
rclone config

Le logiciel Open Source génère un fichier %USERPROFILE%\AppData\Roaming\rclone\rclone.conf, dont je vous donne le contenu :

[enfinauchaud]
type = sftp
host = 192.168.1.10
user = root
port = 22
key_file = d:\config\ssh\id_rsa

Tester rclone

A partir de la ligne de commande, reprenez le nom donnée à votre configuration (ici enfinauchaud) et tester la commande ls :

rclone ls enfinauchaud:/home

La copie avec rclone

La copie se fait de répertoire à répertoire. Les options de la commande copy sont fort nombreuses. Celles qui m’ont intéressé concernent la gestion multi-threads :

rclone copy enfinauchaud:/home/sauve d:/config/dedibox/home/sauve --multi-thread-cutoff 0 --multi-thread-streams 16 

Tâche planifiée

La dernière étape est de créer une tâche planifiée sous Windows à partir de la console taskschd.msc.

Tous les services pris en charge par rclone

Pour obtenir la liste exhaustive des services pris en charge, tapez à partir de la ligne de commandes :

rclone help backends

alias        Alias for an existing remote
memory       In memory object storage system.
crypt        Encrypt/Decrypt a remote
hdfs         Hadoop distributed file system
local        Local Disk
protondrive  Proton Drive
storj        Storj Decentralized Cloud Storage
tardigrade   Storj Decentralized Cloud Storage
fichier      1Fichier
filefabric   Enterprise File Fabric
ftp          FTP
http         HTTP
internetarchive Internet Archive
koofr        Koofr, Digi Storage and other Koofr-compatible storage providers
mega         Mega
netstorage   Akamai NetStorage
opendrive    OpenDrive
qingstor     QingCloud Object Storage
seafile      seafile
sftp         SSH/SFTP
sia          Sia Decentralized Cloud
smb          SMB / CIFS
sugarsync    Sugarsync
uptobox      Uptobox
webdav       WebDAV
azureblob    Microsoft Azure Blob Storage
b2           Backblaze B2
quatrix      Quatrix by Maytech
cache        Cache a remote
chunker      Transparently chunk/split large files
combine      Combine several remotes into one
compress     Compress a remote
hasher       Better checksums for other remotes
oos          Oracle Cloud Infrastructure Object Storage
s3           Amazon S3 Compliant Storage Providers including AWS, Alibaba, ArvanCloud, Ceph, China Mobile,
             Cloudflare, GCS, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Leviia,
             Liara, Lyve Cloud, Minio, Netease, Petabox, RackCorp, Scaleway, SeaweedFS, StackPath, Storj,
             Synology, Tencent COS, Qiniu and Wasabi
swift        OpenStack Swift (Rackspace Cloud Files, Blomp Cloud Storage, Memset Memstore, OVH)
union        Union merges the contents of several upstream fs
acd          Amazon Drive
dropbox      Dropbox
gphotos      Google Photos
hidrive      HiDrive
jottacloud   Jottacloud
mailru       Mail.ru Cloud
onedrive     Microsoft OneDrive
pcloud       Pcloud
pikpak       PikPak
premiumizeme premiumize.me
putio        Put.io
sharefile    Citrix Sharefile
yandex       Yandex Disk
zoho         Zoho
box          Box
drive        Google Drive
gcs          Google Cloud Storage (this is not Google Drive)

Documentation du logiciel

Pour compléter ce tuto, pensez à jeter un œil sur la documentation de rclone.

Sauvegarde /