Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
rclone [Le 08/05/2025, 16:42] krodelabestiole évite confusion |
rclone [Le 06/06/2025, 10:13] (Version actuelle) krodelabestiole rclone browser abandonné |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
**[[wp>Rclone]]** est un logiciel libre qui permet de synchroniser des répertoires et des fichiers sur de nombreuses plateformes de stockage différentes. Il dispose en plus de nombreuses fonctionnalités de [[:gestionnaire de fichiers|gestion de fichiers]] à distance sur de très nombreuses plateformes //[[:cloud]]//. | **[[wp>Rclone]]** est un logiciel libre qui permet de synchroniser des répertoires et des fichiers sur de nombreuses plateformes de stockage différentes. Il dispose en plus de nombreuses fonctionnalités de [[:gestionnaire de fichiers|gestion de fichiers]] à distance sur de très nombreuses plateformes //[[:cloud]]//. | ||
- | Initialement il offre un fonctionnement similaire à [[:rsync]] (il se présente lui-même comme "rsync, pour le stockage cloud"(([[https://github.com/rclone/rclone|GitHub]] : //rsync for cloud storage//))) : il rend la source et la destination identiques en ne modifiant que la destination.\\ | + | Initialement il offre un fonctionnement similaire à **[[:rsync]]** (il se présente lui-même comme "rsync, pour le stockage cloud"(([[https://github.com/rclone/rclone|GitHub]] : //rsync for cloud storage//))) : il rend la source et la destination identiques en ne modifiant que la destination.\\ |
- | Désormais il propose aussi de monter tous types de stockages distants en système de fichier, implémente différentes méthodes de synchronisation bidirectionnelle, et fournit ses propres implémentations optimisées d'outils comme [[:analyseur_usage_espace_disque#en_mode_terminal|ncdu]]. | + | Désormais il propose aussi de monter tous types de stockages distants en système de fichier, implémente différentes méthodes de synchronisation bidirectionnelle, et fournit ses propres implémentations optimisées d'outils comme **[[:analyseur_usage_espace_disque#en_mode_terminal|ncdu]]**. |
C'est un outil en [[:commande_shell|ligne de commande]], mais il existe des interfaces graphiques et il inclut lui-même une interface web. | C'est un outil en [[:commande_shell|ligne de commande]], mais il existe des interfaces graphiques et il inclut lui-même une interface web. | ||
Grand frère de R**CLONE**, **[[:rsync]]** est très largement utilisé sur Linux pour la copie et synchronisation de fichiers, que ce soit localement ou via le protocole [[:SSH]].\\ | Grand frère de R**CLONE**, **[[:rsync]]** est très largement utilisé sur Linux pour la copie et synchronisation de fichiers, que ce soit localement ou via le protocole [[:SSH]].\\ | ||
- | Il montre cependant ses limites lorsqu'il s'agit de copier du contenu sur des services tiers ou certains protocoles comme le [[:WebDAV]]. Les fonctions ne sont pas implémentées ou s'avère extrêmement peu performantes combinées à l'utilisation de [[:FUSE]] (pour "faire croire" à rsync qu'il s'agit d'un montage local, comme par exemple [[:davfs2]] pour accéder à un serveur [[:WebDAV]], ou [[:fusesmb]] pour les partages [[:Samba|CIFS ou SMB]]). | + | Il montre cependant ses limites lorsqu'il s'agit de copier du contenu sur des services tiers ou certains protocoles comme le [[:WebDAV]]. Les fonctions ne sont pas implémentées ou s'avèrent extrêmement peu performantes combinées à l'utilisation de **[[:FUSE]]** (pour "faire croire" à **rsync** qu'il s'agit d'un montage local, comme par exemple **[[:davfs2]]** pour accéder à un serveur [[:WebDAV]], ou **[[:fusesmb]]** pour les partages [[:Samba|CIFS / SMB]]). |
- | R**CLONE** est extrêmement performant dans toutes ces situations sans nécessiter d'optimisations particulières (en WebDAV on peut s'attendre à multiplier les vitesses de transferts de rsync ou de certains clients par 50 !). | + | R**CLONE** est extrêmement performant dans toutes ces situations sans nécessiter d'optimisation particulière (en WebDAV on peut s'attendre à multiplier les vitesses de transferts de **rsync** ou de certains clients par 50 !). |
Il prend en charge une quantité sidérante de protocoles et de fournisseurs de services [[:cloud]], dans la [[https://github.com/rclone/rclone#storage-providers|liste desquels]] on peut citer : | Il prend en charge une quantité sidérante de protocoles et de fournisseurs de services [[:cloud]], dans la [[https://github.com/rclone/rclone#storage-providers|liste desquels]] on peut citer : | ||
Ligne 46: | Ligne 46: | ||
<note warning> | <note warning> | ||
- | Ni R**CLONE**, ni Rclone Browser ne sont malheureusement traduits en français pour le moment. Il est donc compliqué de les utiliser sans maîtriser un minimum la langue de John Cleese. N'hésitez pas à demander de l'aide sur le [[https://forum.ubuntu-fr.org|forum]] si besoin ! | + | R**CLONE** n'est malheureusement pas traduit en français pour le moment. Il est donc compliqué de l'utiliser sans maîtriser un minimum la langue de John Cleese. N'hésitez pas à demander de l'aide sur le [[https://forum.ubuntu-fr.org|forum]] si besoin ! |
</note> | </note> | ||
Ligne 52: | Ligne 52: | ||
R**CLONE** est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu.\\ | R**CLONE** est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu.\\ | ||
- | Pour l'installer il suffit donc d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>rclone]].** | + | Pour l'installer il suffit donc d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] ''[[apt>rclone]]''. |
R**CLONE** est aussi disponible en [[:Snap]] depuis [[https://snapcraft.io/rclone|Snapcraft]]. | R**CLONE** est aussi disponible en [[:Snap]] depuis [[https://snapcraft.io/rclone|Snapcraft]]. | ||
Ligne 63: | Ligne 63: | ||
===== Configuration ===== | ===== Configuration ===== | ||
- | On peut configurer R**CLONE** avec un outil interactif en ligne de commande. | + | La configuration de R**CLONE** se fait par défaut via le fichier ''~/.config/rclone/rclone.conf'', avec une entrée (un paragraphe) pour chaque "//remote//" (il s'agit à chaque fois d'un espace de stockage distant). Le nom de l'entrée est entre crochets ''[]'', suivi des différents paramètres permettant de se connecter au service distant. |
- | Entrez la commande suivante dans un [[:terminal]] : | + | R**CLONE** dispose en plus d'un assistant interactif en ligne de commande, qui permet de créer facilement ces entrées dans le fichier de configuration. C'est probablement le plus pratique pour commencer.\\ |
+ | Entrez la commande suivante dans un [[:terminal]] : | ||
rclone config | rclone config | ||
Ligne 73: | Ligne 74: | ||
* Dans un premier temps tapez ''n'' pour //New remote// (nouveau stockage distant). | * Dans un premier temps tapez ''n'' pour //New remote// (nouveau stockage distant). | ||
* Entrez un identifiant au choix pour ce stockage, par ex. ''monServeur''. Évitez les espaces et les caractères spéciaux (accents, etc.) ! | * Entrez un identifiant au choix pour ce stockage, par ex. ''monServeur''. Évitez les espaces et les caractères spéciaux (accents, etc.) ! | ||
- | * Une liste impressionnante de protocoles / prestataire vous est proposée dans l'ordre alphabétique. Choisissez celui que vous utilisez en tapant son numéro. | + | * Une liste impressionnante de protocoles et prestataires vous est proposée dans l'ordre alphabétique. Choisissez celui que vous utilisez en tapant son numéro. |
* Si vous utilisez [[:Nextcloud]] ou [[:ownCloud]], choisissez //WebDAV// dans un premier temps.((au sujet de [[:Nextcloud]], voir [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22733253#p22733253|ce message]] sur le forum)) | * Si vous utilisez [[:Nextcloud]] ou [[:ownCloud]], choisissez //WebDAV// dans un premier temps.((au sujet de [[:Nextcloud]], voir [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22733253#p22733253|ce message]] sur le forum)) | ||
* En fonction du choix précédent vous devrez entrer des informations de connexion. | * En fonction du choix précédent vous devrez entrer des informations de connexion. | ||
Ligne 104: | Ligne 105: | ||
vendor = nextcloud | vendor = nextcloud | ||
user = utilisateur | user = utilisateur | ||
- | pass = XXXXXXXXXXXXXXXX | + | pass = **************** |
[serveur-sftp] | [serveur-sftp] | ||
Ligne 124: | Ligne 125: | ||
user = freebox | user = freebox | ||
port = 1234 | port = 1234 | ||
- | pass = XXXXXXXXXXXXXXXX | + | pass = **************** |
explicit_tls = true | explicit_tls = true | ||
Ligne 132: | Ligne 133: | ||
vendor = Infomaniak | vendor = Infomaniak | ||
user = utilisateur@exemple.com | user = utilisateur@exemple.com | ||
- | pass = XXXXXXXXXXXXXXXX | + | pass = **************** |
[put.io] | [put.io] | ||
type = putio | type = putio | ||
- | token = {"access_token":"XXXXXXXXXXXXXXXX","expiry":"0001-01-01T00:00:00Z"} | + | token = {"access_token":"****************","expiry":"0001-01-01T00:00:00Z"} |
+ | |||
+ | [gdrive] | ||
+ | type = drive | ||
+ | client_id = 123456-abcdef123456.apps.googleusercontent.com | ||
+ | client_secret = XXXXXXXXXXXXXXXX | ||
+ | token = {"access_token":"XXXXXXXXXXXXXXXX","token_type":"Bearer","refresh_token":"XXXXXXXXXXXXXXXX","expiry":"0001-01-01T00:00:00.00+02:00"} | ||
+ | scope = drive | ||
</file> | </file> | ||
- | FIXME ajouter **google drive**, très demandé. | + | Ces exemples sont évidemment à ajuster, en fonction des services auxquels on souhaite se connecter : |
- | + | * ''utilisateur'' correspond à un identifiant ou nom d'utilisateur. | |
- | Ces exemples sont évidemment à ajuster, en fonction des services à dispositions : | + | |
- | * ''utilisateur'' correspond à un nom d'utilisateur. | + | |
* ''exemple.com'' correspond à un nom de domaine. | * ''exemple.com'' correspond à un nom de domaine. | ||
* ''1234'' ou ''123456'' correspondent à des numéros de port, ou des identifiants uniques. | * ''1234'' ou ''123456'' correspondent à des numéros de port, ou des identifiants uniques. | ||
- | * ''XXXXXXXXXXXXXXXX'' correspond à un mot de passe chiffré au moyen de la commande ''rclone obscure''. | + | * ''XXXXXXXXXXXXXXXX'' correspond à une clé unique. |
+ | * ''%%****************%%'' correspond à un mot de passe chiffré au moyen de la commande ''rclone obscure''. | ||
+ | |||
+ | <note> | ||
+ | Pour **Google Drive** (''gdrive'' dans ces exemples) l'opération est complexe. | ||
+ | |||
+ | Il faut créer un accès à l'[[https://console.cloud.google.com/apis/api/drive.googleapis.com|API correspondante]]((Voir la [[https://rclone.org/drive/#making-your-own-client-id|documentation Rclone]] en anglais, [[https://developers.google.com/workspace/guides/configure-oauth-consent?hl=fr|celle de Google]] pourra aussi être utile.)) et soigneusement noter (dans un [[:securite#logiciels_de_gestion_de_mots_de_passe|gestionnaire de mots de passe]]) : | ||
+ | * votre ''ID client'' | ||
+ | * et son ''Code secret'' associé. | ||
+ | Il vaut sans doute mieux renseigner ces informations avec la commande ''rclone config'' (plutôt qu'éditer directement le fichier de configuration), car R**CLONE** doit encore ouvrir une page du navigateur afin d'autoriser sa connexion chez Google et de générer le ''token''.\\ | ||
+ | Sinon pour cette dernière opération on peut aussi utiliser la commande : | ||
+ | <code>rclone config reconnect gdrive:</code> | ||
+ | |||
+ | ---- | ||
+ | |||
+ | La connexion aux autres services est //beaucoup// plus simple à configurer. N'hésitez donc pas à opter pour un [[:cloud |service cloud]] respectueux de votre [[:anonymat#cloud|vie privée]] (et de celle de vos correspondants) ! | ||
+ | </note> | ||
==== Test ==== | ==== Test ==== | ||
Ligne 154: | Ligne 176: | ||
* Vous pouvez adapter la commande ''rclone about monServeur:'' pour obtenir des informations sur le service (espace disponible). Ceci permet aussi de confirmer que votre service est bien configuré. | * Vous pouvez adapter la commande ''rclone about monServeur:'' pour obtenir des informations sur le service (espace disponible). Ceci permet aussi de confirmer que votre service est bien configuré. | ||
* ''rclone ls monServeur:'' permet de lister les fichiers et répertoires du stockage distant (comme avec la commande [[:tutoriel:console_commandes_de_base#ls]]). | * ''rclone ls monServeur:'' permet de lister les fichiers et répertoires du stockage distant (comme avec la commande [[:tutoriel:console_commandes_de_base#ls]]). | ||
- | * L'option ''--dry-run'' permet d'afficher le retour d'une commande sans l'exécuter effectivement. | + | * L'option ''%%--%%dry-run'' permet d'afficher le retour d'une commande sans l'exécuter effectivement. |
* ''rclone check'' affiche également la différence d'état entre les fichiers locaux et distants. | * ''rclone check'' affiche également la différence d'état entre les fichiers locaux et distants. | ||
Ligne 173: | Ligne 195: | ||
Par exemple : ''monServeur:/chemin/absolu'' ou ''monServeur:chemin/relatif''. | Par exemple : ''monServeur:/chemin/absolu'' ou ''monServeur:chemin/relatif''. | ||
- | <note tip>Dans un premier temps vous pouvez tester votre commande sans danger et sans toucher à aucun fichiers avec l'option ''--dry-run'' : | + | <note tip>Dans un premier temps vous pouvez tester votre commande sans danger et sans toucher à aucun fichiers avec l'option ''%%--%%dry-run'' : |
<code>rclone sync --update --progress --dry-run [source] [destination]</code></note> | <code>rclone sync --update --progress --dry-run [source] [destination]</code></note> | ||
Ligne 284: | Ligne 306: | ||
Il est aussi possible d'utiliser R**CLONE** graphiquement : | Il est aussi possible d'utiliser R**CLONE** graphiquement : | ||
+ | * R**CLONE** propose nativement une interface web. Vous pouvez la lancer et l'ouvrir dans votre navigateur avec la commande : <code>rclone rcd --rc-web-gui</code> | ||
+ | * **[[https://github.com/pieterdd/RcloneShuttle|Rclone Shuttle]]** est une interface GTK, donc idéale pour [[:GNOME]], disponible en [[:Flatpak]] depuis [[https://flathub.org/apps/io.github.pieterdd.RcloneShuttle|Flathub]]. | ||
- | * [[https://kapitainsky.github.io/RcloneBrowser/|Rclone Browser]] est disponible dans les [[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôts universe]] d'Ubuntu. Vous pouvez donc [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>rclone-browser]].** | + | <note tip>On peut aussi évidemment utiliser le [[:gestionnaire de fichiers]] de son choix, tel que [[:nautilus|GNOME Fichiers]], en [[#montage|montant]] le stockage distant en système de fichiers.</note> |
- | * R**CLONE** propose lui-même une interface web. Vous pouvez la lancer et l'ouvrir dans votre navigateur avec la commande : <code>rclone rcd --rc-web-gui</code> | + | |
===== Problèmes connus ===== | ===== Problèmes connus ===== |