====== Hubic (+rclone) ======
OVH a désormais fermé les inscriptions à Hubic. Vous ne pouvez plus créer de compte. De plus, déçu par le service, j'ai clôturé mon compte.
**[[https://hubic.com/|Hubic]]** est un service de stockage de fichiers en ligne fourni par OVH, similaire à Dropbox ou GoogleDrive. Il est **bien meilleur marché** que ses concurrents (et de loin !):
* 25 Go : gratuit.
* 100 Go : 10 €/an
* 10 To : 50 €/an
Certes c'est bon marché, mais cela vient avec quelques limitations qu'il est **important de connaître**:
===== Caractéristiques particulières =====
* **Le service n'est pas à 100% de disponibilité.** Oui il y a quelques moments où vous ne pourrez pas vous loguer.
* Le service n'est **pas rapide**.
* Donc: **Ne vous reposez pas dessus pour des besoins critiques** (backup principal ou pour du temps réel), mais pour un backup secondaire, lancé en tâche de fond, c'est parfait étant donné le prix.
* Les débits sont corrects, mais **passer d'un fichier à l'autre peut être très lent**.
* Conséquence: Transférer quelques gros fichiers ne pose pas de problème, mais transférer un grand nombre de petits fichiers sera **lent**. Hubic n'est pas fait pour ça.
* Si vous avez beaucoup de petits fichiers, il peut être intéressant de faire des archives 7z/zip avant.
* Dans votre compte Hubic, vous disposez de plusieurs "espaces" de stockage. Le stockage par défaut (celui visible dans l'interface web) s'appelle ''default''.
* (Certaines applications utilisant Hubic peuvent éventuellement stocker dans d'autres espaces qui ne seront pas visible dans l'application web.)
* Le stockage côté OVH n'est pas chiffré. Chiffrez vos fichiers importants avant de les envoyer. Typiquement:
* Archive 7z chiffrée (le chiffrement est solide)
* Logiciels de backup chiffrés (borg, duplicity...)
**Astuce**: Si vous avez beaucoup de petits fichiers fréquemment modifiés localement, il peut être intéressant de faire un backup avec [[borgbackup|borg]] en local d'abord, et ensuite d'envoyer votre repo borg sur Hubic. Ainsi vous réduirez grandement la quantité de données à transférer. (En prime, borg proposant le chiffrement, le backup sera chiffré avant d'être envoyé sur Hubic).
===== Applications =====
Applications à utiliser pour stocker des données dans Hubic et les récupérer.
**TL;DR**:\\
* **[[https://rclone.org/|rclone]]** est fiable.
* Les applications web, Linux et Android **ne sont pas fiables**.
* **Utilisez uniquement rclone ou RCloneBrowser.**
L'accès à vos fichiers peut se faire avec plusieurs applications:
* **Web**: L'application standard web n'est pas extraordinaire.
* Elle est très lente.
* Elle échoue de manière récurrente à copier ou déplacer des fichiers (!)
* À cause d'un bug (identifié dans l'application web), elle est incapable de manipuler (déplacer/copier/partager) de manière fiable les répertoires créés par rclone. ((Ce bug m'a été confirmé par OVH, mais je n'ai pas d'informations sur son éventuelle résolution.))
* **Android**:
* Je n'utilise absolument pas l'application Android Hubic.
* J'utilise **[[https://play.google.com/store/apps/details?id=dk.tacit.android.foldersync.full|FolderSync]]** qui marche bien.
* **Linux**:
* Je n'utilise absolument pas l'application Linux Hubic.
* J'utilise **[[https://rclone.org/|rclone]]** (outils en ligne de commande) qui fonctionne un peu à la manière de rsync, et qui est très fiable. ((À moins que le service Hubic soit complètement indisponible, je n'ai jamais d'échec de transfert des fichiers. Ce qui est plutôt bon signe.))
* [[https://mmozeiko.github.io/RcloneBrowser/|RCloneBrowser]] est une petite interface graphique à rclone. Pas parfaite, mais bien pratique, et surtout les transfers sont //beaucoup// plus fiables qu'avec l'application web.
* Il existe ''hubicfuse'' pour accéder directement à votre stockage Hubic dans le système de fichiers mais je ne l'ai pas encore essayé. (Des paquets sont disponible dans la plupart des distributions, mais il y a un peu de configuration à faire à la main.)
----
==== rclone ====
D'une manière générale, **j'utilise presque exclusivement rclone** pour transférer des fichiers vers/depuis mon compte Hubic. Voici un résumé des principales commandes:
* **Configurer** l'accès à Hubic: rclone config
* et suivre les instructions. (J'ai nommé mon compte Hubic ''hubic'' et l'utilise ci-dessous:)
* Le fichier de config de rlone est enregistré dans ''~/.config/rclone/rclone.conf''
* **Copier** vers Hubic (n'efface aucun fichier dans la destination): rclone -v copy source hubic:default/repertoiredistant
* //source// étant un répertoire ou un fichier.
* //repertoiredistant// est forcément un répertoire.
* ''-v'' permet de voir la progression.
* **Synchroniser** vers Hubic (efface des fichiers de la destination si supprimés de la source): rclone -v sync source hubic:default/repertoiredistant
* Pour **simuler** la synchronisation sans toucher aux fichiers (Pour voir ce qui serait effacé dans le répertoire distant) ajoutez l'option ''--dry-run'' ou ''-n''.
* **Afficher la différence** entre local et distant: rclone check source hubic:default/repertoiredistant
* **Lister** les fichiers distants: rclone ls hubic:default/repertoiredistant
* **Télécharger** un fichier distant vers local: rclone copy hubic:default/repertoiredistant/fichier /repertoirelocal
* Afficher les **md5** des fichiers distants: rclone md5sum hubic:default/repertoiredistant
* Afficher la **taille** d'un dossier distant: rclone size hubic:default/repertoiredistant
**Note**: l'affichage de rclone pendant les transferts est un peu particulier:
* Il affiche une ligne quand il a **fini** de transférer un fichier.
* Toutes les minutes, il affiche les transferts en cours. (Vous pouvez ajouter l'option ''--stats=5s'' pour voir toutes les 5 secondes, par exemple)
* Il est donc tout à fait possible que rclone ne vous affiche rien pendant un certain temps pendant les transferts. **C'est normal**.
* Si vos noms de fichier contiennent des espaces, pensez à les encadrer par des guillemets. Exemple:rclone copy -v "hubic:default/Mes livres/Clive Barker_Imajica - L'integrale.epub" /home/toto/Bureau
**Par défaut**:
* rclone fait tourner plusieurs threads en parallèle: Un premier groupe qui se balade dans les répertoires pour lister les fichiers à traiter (''checkers''), et un autre qui s'occupe du transfert des fichiers eux-même (''transfers'').
* Par défaut, rclone fait tourner 8 ''checkers'' et 4 ''transfers''. (Il y a donc 4 transfers de fichiers en parallèle, ce qui n'est pas une mauvaise idée étant donné que Hubic est lent pour passer d'un fichier à l'autre).
* Vous pouvez limiter le nombre de **transferts simultanés** de fichiers avec l'option **''--transfers=n''** (n étant le nombre de transferts simultanés que vous souhaitez).
* Vous pouvez limiter l'utilisation de la **bande passante** avec l'option **''--bwlimit=x''** (x étant un nombre+unité (k/b/M/G). Exemple ''--bwlimit=1M'' pour limiter à 1 Mo/seconde)
**Erreurs**:
* ''Unsolicited response received on idle HTTP channel starting with "HTTP/1.0 408 Request Time-out\r\nCache-Control: no-cache\r\nConnection: close\r\nContent-Type: text/html\r\n\r\n
408 Request Time-out
\nYour browser didn't send a complete request in time.\n\n"; err=''. Erreur à ignorer. rclone va ré-essayer automatiquement.
* ''Failed to create file system for "....": error authenticating swift connection: failed to get credentials: 401'' : Le token d'authentification de rclone n'est sans doute plus valide. Faites un ''rclone config'' pour le re-créer.