| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| rclone [Le 04/03/2024, 12:12] – detail fonction krodelabestiole | rclone [Le 14/04/2026, 23:18] (Version actuelle) – màj lien interne krodelabestiole |
|---|
| {{tag>synchronisation réseau internet cloud sauvegarde}} | {{tag>synchronisation réseau internet fichiers cloud sauvegarde}} |
| |
| {{ :logo:rclone.png?120|Logo de Rclone}} | {{ :logo:rclone.png?120|Logo de Rclone}} |
| ====== Rclone ====== | ====== Rclone ====== |
| |
| **[[wp>Rclone]]** est un logiciel libre qui permet initialement de synchroniser des répertoires et des fichiers sur de nombreuses plateformes de stockage différentes. Il dispose maintenant de très nombreuses fonctionnalités de [[gestionnaire de fichiers|gestion de fichiers]] 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. |
| |
| [[: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 [[: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 : |
| |
| * les systèmes de fichiers locaux | * les systèmes de fichiers locaux |
| * [[:Samba|SMB / CIFS]] (partages locaux, Windows, Linux ou MacOS) | * [[:SMB]] (partages locaux, Windows, Linux ou MacOS) |
| * [[:WebDAV]] | * [[:WebDAV]] |
| * [[:ssh#monter_un_repertoire_distant_navigation_via_sftp_secure_file_transfer_protocol|SFTP]] ([[:SSH]]) | * [[:SFTP]] ([[:SSH]]) |
| * [[:FTP]] | * [[:FTP]] |
| * [[wpfr>HTTP]] | * [[wpfr>HTTP]] |
| * OVH | * OVH |
| * Synology C2 Object Storage | * Synology C2 Object Storage |
| * Google Drive, Google Cloud Storage, Google Photos | * [[:Google Drive]], Google Cloud Storage, Google Photos |
| * Amazon S3 | * Amazon S3 |
| * Microsoft OneDrive | * Microsoft [[:OneDrive]] |
| * OpenStack Swift | * OpenStack Swift |
| * Oracle Cloud Storage | * Oracle Cloud Storage |
| * Dropbox | * [[:Dropbox]] |
| * Proton Drive | * Proton Drive |
| * Box | * Box |
| * Internet Archive | * Internet Archive |
| * put.io | * put.io |
| * Mega | * [[:Mega]] |
| * etc. | * etc. |
| |
| |
| <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.ubunut-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> |
| |
| ===== Installation ===== | ===== Installation ===== |
| |
| R**CLONE** est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu.\\ | * R**CLONE** est disponible dans les [[#dépôts officiels APT]] d'Ubuntu. |
| Pour l'installer il suffit donc d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>rclone]].** | * Il est aussi distribué par ses développeurs en tant que simple fichier binaire isolé, et peut donc s'[[#Installation manuelle|installer manuellement]]. |
| | * Il existe aussi un paquet [[#snap]] non-officiel. |
| |
| R**CLONE** est aussi disponible en [[:Snap]] depuis [[https://snapcraft.io/rclone|Snapcraft]]. | <note tip> |
| | Vous trouverez aussi des informations concernant le téléchargement et l'installation de R**CLONE** en anglais sur son [[https://rclone.org/install/#linux|site officiel]]. |
| | </note> |
| | |
| | Pour l'installer vous avez donc le choix entre l'une de ces méthodes : |
| | |
| | ==== Dépôts officiels APT ==== |
| | |
| | R**CLONE** est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu. |
| | |
| | Pour l'obtenir il suffit donc d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] ''[[apt>rclone]]''. |
| | |
| | ==== Installation manuelle ==== |
| | |
| | R**CLONE** est aussi distribué par ses développeurs sur [[https://github.com/rclone/rclone/releases/|GitHub]]. |
| | |
| | Pour l'installer on peut donc simplement extraire le fichier zip correspondant, et placer le fichier ''rclone'' en ajustant ses [[:permissions]] pour le rendre exécutable, soit dans le répertoire des [[:arborescence#binaires personnels]] ''~/.local/bin/'', soit avec les [[:sudo|droits d'administrateur]] dans le répertoire ''/usr/local/bin/''. |
| | |
| | Cette dernière méthode en ligne de commande : |
| | <code>wget https://github.com/rclone/rclone/releases/download/v1.72.0/rclone-v1.72.0-linux-amd64.zip |
| | unzip rclone-v1.72.0-linux-amd64.zip |
| | sudo cp rclone-v1.72.0-linux-amd64/rclone /usr/local/bin/ |
| | sudo chmod +x /usr/local/bin/rclone |
| | sudo rclone self-update |
| | rm -rf rclone-v1.72.0-linux-amd64 rclone-v1.72.0-linux-amd64.zip</code> |
| | ([[:tutoriel:comment_installer_un_paquet|Installez les paquets]] ''[[apt>wget]]'' et ''[[apt>zip]]'' si nécessaire.) |
| | |
| | ==== Snap ==== |
| | |
| | R**CLONE** est disponible en [[:Snap]] depuis [[https://snapcraft.io/rclone|Snapcraft]]. Cette distribution n'est cependant pas officielle. Cette méthode n'est donc pas recommandée. |
| | |
| | On peut l'installer sur Ubuntu simplement en installant ''rclone'' depuis le [[:snap store|centre d'applications (Snap Store)]], ou en installant le paquet ''rclone'' en ligne de commande : |
| | <code>snap install rclone</code> |
| | |
| | ==== Dernière version ==== |
| | |
| | Une fois installé, on peut mettre à jour le logiciel à sa dernière version stable très simplement grâce à la commande ''[[https://rclone.org/commands/rclone_selfupdate/|selfupdate]]'' : |
| | <code>sudo rclone selfupdate</code> |
| |
| ===== Configuration ===== | ===== Configuration ===== |
| |
| On peut configurer R**CLONE** avec un outil interactif en ligne de commande. | <note tip> |
| | Ce chapitre indique comment configurer R**CLONE** depuis un [[:terminal]], mais il est aussi possible de le faire sans doute plus facilement au moyen de l'interface web intégrée, qu'on peut ouvrir avec la commande suivante : |
| | rclone rcd --rc-web-gui |
| | |
| | Les paramètres et le fichier dans lequel ils sont enregistrés restent les mêmes (bien qu'il s'agisse d'une interface [[:web]], elle concerne par défaut bien l'application locale). |
| | |
| | Toutefois cette interface n'existe pour le moment qu'en version anglaise. |
| | </note> |
| | |
| | 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 |
| |
| * 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 le nom du stockage (pour vous y retrouver), par ex. ''monServeur''. | * 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.((Les prestataires compatibles sont listés dans [[https://rclone.org/overview/|ces tableaux]] avec pour chacun les particularités et fonctionnalités disponibles (il s'agit de notions avancées qui ne sont heureusement pas utiles la plupart du temps).)) |
| * 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. |
| |
| <note tip>Mettez un espace avant '' rclone obscure'' afin d’éviter d’enregistrer votre mot de passe en clair dans l’[[:bash#bash_history|historique bash]] !</note> | <note tip>Mettez un espace avant '' rclone obscure'' afin d’éviter d’enregistrer votre mot de passe en clair dans l’[[:bash#bash_history|historique bash]] !</note> |
| | |
| | ==== Exemples ==== |
| | |
| | <file ini rclone.conf> |
| | [nextcloud] |
| | type = webdav |
| | url = https://nextcloud.exemple.com/remote.php/dav/files/utilisateur |
| | vendor = nextcloud |
| | user = utilisateur |
| | pass = **************** |
| | |
| | [serveur-sftp] |
| | type = sftp |
| | host = ftp.exemple.com |
| | user = utilisateur |
| | shell_type = unix |
| | md5sum_command = md5sum |
| | sha1sum_command = sha1sum |
| | |
| | [freebox-smb] |
| | type = smb |
| | host = freebox-server.local |
| | user = guest |
| | |
| | [freebox-ftpes] |
| | type = ftp |
| | host = exemple.freeboxos.fr |
| | user = freebox |
| | port = 1234 |
| | pass = **************** |
| | explicit_tls = true |
| | |
| | [kDrive] |
| | type = webdav |
| | url = https://123456.connect.kdrive.infomaniak.com |
| | vendor = Infomaniak |
| | user = utilisateur@exemple.com |
| | pass = **************** |
| | |
| | [put.io] |
| | type = putio |
| | 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> |
| | |
| | Ces exemples sont évidemment à ajuster, en fonction des services auxquels on souhaite se connecter : |
| | * ''utilisateur'' correspond à un identifiant ou nom d'utilisateur. |
| | * ''exemple.com'' correspond à un nom de domaine. |
| | * ''1234'' ou ''123456'' correspondent à des numéros de port, ou des identifiants uniques. |
| | * ''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 ==== |
| |
| Ces commandes peuvent être utile pour tester votre configuration : | Ces commandes peuvent être utiles pour tester votre configuration : |
| |
| * ''rclone listremotes'' permet de lister les stockages distants configurés. | * ''[[https://rclone.org/commands/rclone_listremotes/|rclone listremotes]]'' permet de lister les stockages distants configurés. |
| * Vous pouvez adapter la commande ''rclone about monServeur:'' pour obtenir des informations sur le service (espace disponible). Ceci permet de confirmer que votre service est bien configuré. | * Vous pouvez adapter la commande ''[[https://rclone.org/commands/rclone_about/|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]]). | * ''[[https://rclone.org/commands/rclone_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. |
| |
| ===== Utilisation ===== | ===== Utilisation ===== |
| |
| On peut afficher la liste des commandes disponibles en tapant simplement ''rclone'' dans un [[:terminal]]. | Il est désormais possible d'utiliser R**CLONE** au moyen d'une [[#interface graphique]], ou depuis un autre logiciel (comme [[:deja-dup|Déjà Dup]] ou [[:Restic]] par ex.), mais il est initialement pensé pour être utilisé en ligne de commande. |
| |
| R**CLONE** permet de réaliser toutes sortes d'opérations (''rclone du'', ''rclone ncdu'', ''rclone dedupe'', etc.), dont le [[#montage]] et la [[#Copie / synchronisation|synchronisation]]. | Depuis un [[:terminal]], R**CLONE** s'utilise avec la commande ''rclone'' suivie d'une sous-commande correspondant à une opération (ou action), elle-même souvent suivie de paramètres, à commencer généralement par l'identifiant du stockage distant (//remote// en anglais), en l'occurrence ''monServeur:'' pour l'exemple de cette documentation.\\ |
| | On peut afficher la liste des (sous-)commandes disponibles en tapant simplement ''rclone'' dans un [[:terminal]]. |
| | |
| | R**CLONE** permet de réaliser toutes sortes d'opérations de gestion de fichiers, d'[[#analyse]], de [[#serveur|services]], dont le [[#montage]] et la [[#Copie / synchronisation|synchronisation]]. |
| | |
| | <note tip> |
| | Toutes les [[https://rclone.org/commands/|sous-commandes]] sont listées et décrites en anglais dans [[https://rclone.org/docs/|le guide d'utilisation]], avec des instructions détaillées; de même pour les [[https://rclone.org/overview/|fournisseurs]]. |
| | </note> |
| |
| ==== Copie / synchronisation ==== | ==== Copie / synchronisation ==== |
| |
| En ligne de commande, R**CLONE** s'utilise un peu comme [[:rsync]] avec la commande ''rclone sync'' : | R**CLONE** peut s'utiliser un peu comme [[:rsync]] avec la commande ''[[https://rclone.org/commands/rclone_sync/|rclone sync]]'' : |
| <code>rclone sync --update --progress [source] [destination]</code> | <code>rclone sync --update --progress [source] [destination]</code> |
| |
| Chaque ''[source]'' ou ''[destination]'' peut être un [[:chemins|chemin]] //local// ou //distant//. | * ''%%--%%update'' sert à ne pas écraser les fichiers plus récents sur la destination, et ''%%--%%progress'' à afficher la progression. |
| | * ''%%--%%update'' peut être abrégé en ''-u'', et ''%%--%%progress'' en ''-P''. On peut donc simplifier la commande en : <code>rclone sync -uP [source] [destination]</code> |
| | * Chaque ''[source]'' ou ''[destination]'' peut être un [[:chemins|chemin]] //local// ou //distant//. |
| |
| Les chemins distants seront de la forme ''[service]:[chemin]'', ''[service]'' étant le nom du service choisi lors de la configuration.\\ | Les chemins distants sont de la forme ''[service]:[chemin]'', ''[service]'' étant l'identifiant du service de stockage choisi lors de la configuration.\\ |
| 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> |
| |
| Voir aussi **//(en)//** [[https://rclone.org/docs/|le guide d'utilisation]], avec des instructions détaillées pour chaque fournisseur. | * Si on ne souhaite pas supprimer de fichiers de la destination, mieux vaut utiliser la commande ''[[https://rclone.org/commands/rclone_copy|rclone copy]]''. |
| | * ''[[https://rclone.org/commands/rclone_check|rclone check]]'' affiche la différence d'état entre les fichiers locaux et distants. |
| | * ''[[https://rclone.org/commands/rclone_bisync/|rclone bisync]]'' permet de synchroniser dans les deux sens. |
| | |
| | ==== Analyse ==== |
| | |
| | * La commande ''[[https://rclone.org/commands/rclone_about/|rclone about]]'' permet d'afficher l'espace total, utilisé et disponible sur le stockage distant. |
| | * Les commandes ''[[https://rclone.org/commands/rclone_du/|rclone du]]'' et ''[[https://rclone.org/commands/rclone_ncdu/|rclone ncdu]]'' reproduisent les fonctionnalités de **[[:analyseur_usage_espace_disque#du]]** et **[[:analyseur_usage_espace_disque#ncdu]]** afin d'afficher l'espace qu'occupent les répertoires. |
| | * ''[[https://rclone.org/commands/rclone_tree/|rclone tree]]'' permet d'afficher arborescence du contenu distant. |
| | * ''[[https://rclone.org/commands/rclone_check|rclone check]]'' affiche la différence d'état entre les fichiers locaux et distants. |
| |
| ==== Montage ==== | ==== Montage ==== |
| |
| On peut monter un espace en système de fichier avec la commande ''rclone mount'' : | On peut [[:montage|monter]] un espace distant en système de fichier avec la commande ''[[https://rclone.org/commands/rclone_mount/|rclone mount]]'' : |
| <code>rclone mount [service]:[distant] [local]</code> | <code>rclone mount [service]:[distant] [local]</code> |
| |
| |
| === Montage automatique === | === Montage automatique === |
| | <note important>Attention, les méthodes citées ci-dessous semblent dépassées sur les version Ubuntu 24+. Référez-vous à la documentations de la version actuelle de Rclone et Systemd.</note> |
| |
| Il est possible d'utiliser R**CLONE** avec [[:systemd]], [[:autofs]], ou [[:mount_fstab|fstab]]. | Il est possible d'utiliser R**CLONE** avec [[:systemd]], [[:autofs]], ou [[:fstab]]. |
| |
| Pour cela il faut créer des [[:lien_physique_et_symbolique|liens symboliques]] avec les commandes suivantes : | Pour cela il faut créer des [[:lien_physique_et_symbolique|liens symboliques]] avec les commandes suivantes : |
| Vous pouvez consultez la [[https://github.com/rclone/rclone/wiki/rclone-mount-helper-script|documentation en anglais]] à ce sujet. | Vous pouvez consultez la [[https://github.com/rclone/rclone/wiki/rclone-mount-helper-script|documentation en anglais]] à ce sujet. |
| |
| Pour monter automatiquement un volume, [[:mount_fstab|fstab]] est la méthode généralement recommandée pour les humains, [[:systemd]] pour les scripts et les outils.(([[wpfr>Stack_Exchange_Network|Unix & Linux on StackExchange]] : //[[https://unix.stackexchange.com/a/427286/324673|Is there any reason to move away from fstab on a systemd system?]]//)) | Pour [[:montage|monter]] automatiquement un volume, [[:fstab]] est la méthode généralement recommandée pour les humains, [[:systemd]] pour les scripts et les outils.(([[wpfr>Stack_Exchange_Network|Unix & Linux on StackExchange]] : //[[https://unix.stackexchange.com/a/427286/324673|Is there any reason to move away from fstab on a systemd system?]]//)) |
| |
| Voici 2 méthodes qui permettent d'arriver au même résultat : nous allons monter le stockage distant ''monServeur'' dans le répertoire ''/media/monserveur''. Ne suivez que l'une des 2 méthodes : | Voici 2 méthodes qui permettent d'arriver au même résultat : nous allons monter le stockage distant ''monServeur'' dans le répertoire ''/mnt/monserveur''. Ne suivez que l'une des 2 méthodes : |
| |
| == fstab == | == fstab == |
| |
| [[:tutoriel:comment_modifier_un_fichier|Éditez le fichier]] ''/etc/fstab'' avec les [[:sudo|droits d'administration]] afin de lui ajouter la ligne suivante : | [[:tutoriel:comment_modifier_un_fichier|Éditez le fichier]] ''[[:fstab|/etc/fstab]]'' avec les [[:sudo|droits d'administration]] afin de lui ajouter la ligne suivante : |
| |
| <file - /etc/fstab> | <file - /etc/fstab> |
| monServeur: /media/monserveur rclone rw,user,umask=000,noauto,nofail,_netdev,x-systemd.automount,args2env,vfs_cache_mode=writes,config=/etc/rclone.conf,cache_dir=/var/cache/rclone,allow_other,uid=1000,gid=1000 0 0 | monServeur: /mnt/monserveur rclone rw,user,umask=000,noauto,nofail,_netdev,x-systemd.automount,args2env,vfs_cache_mode=writes,config=/etc/rclone.conf,cache_dir=/var/cache/rclone,allow_other,uid=1000,gid=1000 0 0 |
| </file> | </file> |
| |
| Vous pouvez dès lors monter le volume : | Vous pouvez dès lors monter le volume : |
| <code> | <code> |
| sudo mount /media/monserveur | sudo mount /mnt/monserveur |
| </code> | </code> |
| |
| WantedBy=multi-user.target | WantedBy=multi-user.target |
| </file> | </file> |
| Ce fichier sert à s'assurer que le réseau est disponible avant de monter l'espace de stockage distant. | Ce fichier sert à s'assurer que le réseau est disponible avant de [[:montage|monter]] l'espace de stockage distant. |
| |
| Toujours avec les [[:sudo|droits d'administration]], créez ensuite un autre fichier dans le répertoire ''/etc/systemd/system/'' qui aura le nom du chemin dans lequel vous voulez monter le stockage, avec l'extension ''.mount''. Par ex. pour ''/media/monserveur'' le fichier sera ''/etc/systemd/system/media-monserveur.mount'' : | Toujours avec les [[:sudo|droits d'administration]], créez ensuite un autre fichier dans le répertoire ''/etc/systemd/system/'' qui aura le nom du chemin dans lequel vous voulez monter le stockage, avec l'extension ''.mount''. Par ex. pour ''/mnt/monserveur'' le fichier sera ''/etc/systemd/system/mnt-monserveur.mount'' : |
| <file - media-monserveur.mount> | <file - mnt-monserveur.mount> |
| [Unit] | [Unit] |
| Description=Monte monServeur | Description=Monte monServeur |
| Type=rclone | Type=rclone |
| What=monServeur: | What=monServeur: |
| Where=/media/monserveur | Where=/mnt/monserveur |
| Options=rw,allow_other,args2env,vfs-cache-mode=writes,config=/etc/rclone.conf,cache-dir=/var/rclone | Options=rw,allow_other,args2env,vfs-cache-mode=writes,config=/etc/rclone.conf,cache-dir=/var/rclone |
| TimeoutSec=10 | TimeoutSec=10 |
| WantedBy=multi-user.target | WantedBy=multi-user.target |
| </file> | </file> |
| En remplaçant partout ''monserveur'' et ''monServeur'' par ce que vous aurez choisi. | En remplaçant partout ''monserveur'' et ''monServeur'' par l'identifiant vous aurez choisi. |
| |
| Activez ensuite ces modifications avec ces commandes : | Activez ensuite ces modifications avec ces commandes : |
| sudo systemctl daemon-reload | sudo systemctl daemon-reload |
| sudo systemctl enable network-online | sudo systemctl enable network-online |
| sudo systemctl enable media-monserveur.mount | sudo systemctl enable mnt-monserveur.mount |
| </code> | </code> |
| puis redémarrez. | puis redémarrez. |
| Vous pouvez aussi tester le montage avec : | Vous pouvez aussi tester le montage avec : |
| <code> | <code> |
| sudo systemctl start media-monserveur.mount | sudo systemctl start mnt-monserveur.mount |
| </code> | </code> |
| |
| ==== Serveur ==== | ==== Serveur ==== |
| |
| La commande ''rclone serve'' permet d'utiliser R**CLONE** comme [[:serveur]], pour mettre à disposition le stockage de différentes manières.((**(//en//)** [[https://rclone.org/commands/rclone_serve/|documentation rclone serve]])) | * La commande ''[[https://rclone.org/commands/rclone_serve/|rclone serve]]'' permet d'utiliser R**CLONE** comme [[:serveur]], pour mettre à disposition le stockage de différentes manières.\\ Il est ainsi possible de monter facilement un serveur web (HTTP), [[:WebDAV]], [[:DLNA]], [[:SFTP]], [[:FTP]], [[:docker#manipulation_de_volumes|volume docker]] et [[https://rclone.org/commands/rclone_serve/#see-also|quelques autres protocoles]]. Cela permet de convertir un stockage distant d'un certain type (par ex. un service propriétaire plus ou moins cryptique) à un autre (un protocole ouvert largement répandu) ! |
| |
| Il est ainsi possible de monter facilement un serveur web (HTTP), [[:WebDAV]], [[:DLNA]], [[:ssh#monter_un_repertoire_distant_navigation_via_sftp_secure_file_transfer_protocol|SFTP]], [[:FTP]], [[:docker#manipulation_de_volumes|volume docker]] et [[https://rclone.org/commands/rclone_serve/#see-also|quelques autres protocoles]]. Cela permet de convertir un stockage distant d'un certain type (par ex. un service propriétaire plus ou moins cryptique) à un autre (un protocole ouvert largement répandu) ! | * ''[[https://rclone.org/commands/rclone_link/|rclone link]]'' permet de générer un lien public pour partager un fichier ou un répertoire. |
| |
| ===== Interface graphique ===== | ===== Interface graphique ===== |
| |
| 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]]. |
| | |
| | <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> |
| | |
| | ===== Problèmes connus ===== |
| | |
| | ==== Impossible de mettre à jour automatiquement ==== |
| | |
| | Il arrive que la commande : |
| | rclone selfupdate |
| | |
| | retourne une erreur du type : |
| | Error: failed to update rclone: invalid hashsum signature |
| | |
| | Ceci est dû à un changement de bibliothèque récent.((**[[wpfr>OpenPGP]]**, voir cette [[https://github.com/rclone/rclone/issues/7373|issue GitHub]])) |
| |
| * [[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]].** | La solution est de mettre à jour R**CLONE** manuellement.\\ |
| * 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> | Vous pouvez télécharger sur [[https://github.com/rclone/rclone/releases|GitHub]] la dernière version du paquet [[:deb]] qui correspond à votre système (généralement ''linux-amd64.deb''), et l'installer, avec par exemple [[:gdebi]], ou en ligne de commande avec [[:dpkg]] : |
| | sudo dpkg -i ~/Téléchargements/rclone-*-linux-amd64.deb |
| |
| ===== Voir aussi ===== | ===== Voir aussi ===== |
| * [[https://github.com/rclone/rclone|sources sur GitHub]] | * [[https://github.com/rclone/rclone|sources sur GitHub]] |
| * Tutoriel : [[:tutoriel:monter_un_cloud|Monter un cloud comme disque local avec rclone]] | * Tutoriel : [[:tutoriel:monter_un_cloud|Monter un cloud comme disque local avec rclone]] |
| | * [[:Restic]] permet d'utiliser n'importe quel stockage distant R**CLONE** pour y effectuer des sauvegardes de manière particulièrement simple et performante. |
| | * Tutoriel (déc 2025) : [[tutoriel:monter_kdrive_avec_rclone|Monter kDrive (Infomaniak) sur Ubuntu avec Rclone (via WebDAV)]] |
| |
| ---- | ---- |
| //Contributeur : [[:utilisateurs:krodelabestiole]]// | //Contributeur : [[:utilisateurs:krodelabestiole]]// |