PROJET AUTOBLOG


Korben

Site original : Korben

⇐ retour index

Synchronisez votre Linux avec Hubic d’OVH

mercredi 22 novembre 2017 à 14:19

Éric, lecteur de Korben.info m'a gentiment proposé un script et un tuto permettant de mettre en place une synchro Rsync entre votre ordinateur ou votre serveur et Hubic, l'espace de stockage d'OVH. Comme le client officiel pour Linux est un poil mort-vivant, j'ai trouvé que c'était une bonne idée de partager ça ici avec vous, histoire que vous puissiez bénéficier directement sur votre Linux d'un système de fichier de 5 à 10 To.

Si vous avez des remarques à ajouter ou des corrections à faire, n'hésitez pas. Encore merci à Éric d'avoir pris le temps de rédiger tout cela pour la communauté.

=====

Le but de ce Tuto est de présenter la mise en place d’un script de synchronisation basé sur l’indispensable et (bien ?) connu « rsync », entre un ordinateur local et un espace Cloud Hubic, mis à disposition par la Société OVH. L’objet n’est évidemment pas de présenter le client fourni par OVH, plutôt simple à mettre en place, et performant (quand il fonctionne ;-)), mais de proposer une solution tierce ou de secours, qui permet également un accès direct à l’espace de stockage comme un système « local », qui va de 25 Go (proposé gratuitement par OHV) à 10 To, pour 5 €/mois. J’ai également fait en sorte d’augmenter au maximum les performances de synchronisation par rapport à une « simple » commande rsync.

Ce script doit être analysé, et utilisé en fonction des besoins, sans aucune garantie : j’ai moi-même supprimé quelques gigas de mes données personnelles en le mettant au point. Heureusement que j’avais des sauvegardes, faites-en autant.

Montage du système de fichiers Hubic.

L’accès à l’espace de stockage se fait au travers de l’outil hubicfuse et ne sera pas détaillé ici, car d’autres l’ont déjà très bien fait. J’y amène juste quelques personnalisations qui peuvent servir.

Moi j’ai suivi cette page, simple et bien expliquée.

Voici mon fichier de config ".hubicfuse" après avoir suivi le Tuto de P. Diancourt :

client_id=api_hubic_XXXXXXXXXXXXXXXXXXXXXXXXXXX
client_secret=XXXXXXXXXXXXXXXXXXXXXX
refresh_token=XXXXXXXXXXXXXXXXXXXXXXX
cache_timeout = 600
temp_dir = /home/mon_user/tmp

get_extended_metadata = true
curl_verbose = false
curl_progress_state = true
cache_statfs_timeout = 15
debug_level = 0
enable_chmod = false
enable_chown = false

Ajustements personnels :

hubicfuse /home/mon_user/hubic rw,noauto_cache,sync_read,allow_other,no_splice_write,no_splice_move

Vous n’êtes pas obligé de monter ce système de façon permanente, le script fourni plus loin le fera si nécessaire.

Comme le précise bien Pierre Diancourt, ce système de fichiers subit quelques limitations en termes de performances et de fonctionnalités, mais pourra fort bien s’accommoder d’un script basé sur rsync configuré en conséquence.

Le script de synchronisation HubicTool

Ce script, baptisé un peu pompeusement « hubictool » amène 6 arguments plutôt basiques :

Ce script est fortement inspiré de celui que l’on peut trouver ici dans lequel le principe est de parcourir les répertoires avec un « find » et de lancer un thread rsync par répertoire. Le nombre de thread est limité pour ne pas mettre à genou la machine.

J’en ai repris le principe de parallélisation des threads rsync, mais en parallélisant au niveau des fichiers et pas des répertoires. Cela s’adapte mieux à des répertoires avec une forte disparité dans la taille des fichiers. Par exemple une multitude de répertoires avec des petits fichiers (DOC bureautiques, numérisation de papiers administratifs, etc.), et un répertoire avec des films. En parallélisant au niveau répertoire, les petits fichiers sont vite synchronisés, et il reste souvent un seul processus rsync pour le répertoire avec les gros fichiers.

J’ai également repris ce script pour qu’il travaille par niveau de répertoire (il synchronise d’abord la racine, puis les répertoires de niveau 1, 2 … <= $maxdepth

Le script est récupérable ici.

Voici quelques explications sur le code.

Le premier bloc permet d’initialiser les variables les plus courantes : les répertoires, exclusions et point de montage pour hubicfuse. Notez que les exclusions désignent « ce qui commence par ». Les différents PATTERNS sont séparés par des | (pipes). Les slashes sont échappés par des antislashes. Par exemple l’exclusion /_NO_ permet d’exclure rapidement tout répertoire commençant par « _NO_ ». Voir la commande egrep (REGEXP) pour la notation.

On trouve ensuite la fonction principale de synchronisation, avec ses variables, dont certaines peuvent être ajustées :

La fonction hubicmount : comme son nom l’indique monte le système de fichiers hubic, celui-ci n’est pas démonté quand le script se termine normalement.

Le « main » se veut simple puisqu’il est basé sur un « case » énumérant les 3 arguments de ce script : -sync, -backup, -restore.

Enfin un appui sur Ctrl-C pendant l’exécution du script permet de sortir en tuant TOUT les process « rsync ». Ceci n’est possible (pour le moment) qu’en tuant également le process hubicfuse.

C’est pourquoi il vous est demandé de faire un démontage forcé du système de fichier hubicfuse (sudo umount -l hubicfuse) en quittant, sinon il apparaîtra toujours comme monté pour le système.

=====

Merci à Eric pour le tuto et encore bravo pour ce petit script bien pratique. J'espère qu'il vous servira et si vous avez des remarques à faire dessus, les commentaires sont ouverts.

Cet article merveilleux et sans aucun égal intitulé : Synchronisez votre Linux avec Hubic d’OVH ; a été publié sur Korben, le seul site qui t'aime plus fort que tes parents.

Synchronisez votre Linux avec Hubic d’OVH

mercredi 22 novembre 2017 à 14:19

Éric, lecteur de Korben.info m'a gentiment proposé un script et un tuto permettant de mettre en place une synchro Rsync entre votre ordinateur ou votre serveur et Hubic, l'espace de stockage d'OVH. Comme le client officiel pour Linux est un poil mort-vivant, j'ai trouvé que c'était une bonne idée de partager ça ici avec vous, histoire que vous puissiez bénéficier directement sur votre Linux d'un système de fichier de 5 à 10 To.

Si vous avez des remarques à ajouter ou des corrections à faire, n'hésitez pas. Encore merci à Éric d'avoir pris le temps de rédiger tout cela pour la communauté.

=====

Le but de ce Tuto est de présenter la mise en place d’un script de synchronisation basé sur l’indispensable et (bien ?) connu « rsync », entre un ordinateur local et un espace Cloud Hubic, mis à disposition par la Société OVH. L’objet n’est évidemment pas de présenter le client fourni par OVH, plutôt simple à mettre en place, et performant (quand il fonctionne ;-)), mais de proposer une solution tierce ou de secours, qui permet également un accès direct à l’espace de stockage comme un système « local », qui va de 25 Go (proposé gratuitement par OHV) à 10 To, pour 5 €/mois. J’ai également fait en sorte d’augmenter au maximum les performances de synchronisation par rapport à une « simple » commande rsync.

Ce script doit être analysé, et utilisé en fonction des besoins, sans aucune garantie : j’ai moi-même supprimé quelques gigas de mes données personnelles en le mettant au point. Heureusement que j’avais des sauvegardes, faites-en autant.

Montage du système de fichiers Hubic.

L’accès à l’espace de stockage se fait au travers de l’outil hubicfuse et ne sera pas détaillé ici, car d’autres l’ont déjà très bien fait. J’y amène juste quelques personnalisations qui peuvent servir.

Moi j’ai suivi cette page, simple et bien expliquée.

Voici mon fichier de config ".hubicfuse" après avoir suivi le Tuto de P. Diancourt :

client_id=api_hubic_XXXXXXXXXXXXXXXXXXXXXXXXXXX
client_secret=XXXXXXXXXXXXXXXXXXXXXX
refresh_token=XXXXXXXXXXXXXXXXXXXXXXX
cache_timeout = 600
temp_dir = /home/mon_user/tmp

get_extended_metadata = true
curl_verbose = false
curl_progress_state = true
cache_statfs_timeout = 15
debug_level = 0
enable_chmod = false
enable_chown = false

Ajustements personnels :

hubicfuse /home/mon_user/hubic rw,noauto_cache,sync_read,allow_other,no_splice_write,no_splice_move

Vous n’êtes pas obligé de monter ce système de façon permanente, le script fourni plus loin le fera si nécessaire.

Comme le précise bien Pierre Diancourt, ce système de fichiers subit quelques limitations en termes de performances et de fonctionnalités, mais pourra fort bien s’accommoder d’un script basé sur rsync configuré en conséquence.

Le script de synchronisation HubicTool

Ce script, baptisé un peu pompeusement « hubictool » amène 6 arguments plutôt basiques :

Ce script est fortement inspiré de celui que l’on peut trouver ici dans lequel le principe est de parcourir les répertoires avec un « find » et de lancer un thread rsync par répertoire. Le nombre de thread est limité pour ne pas mettre à genou la machine.

J’en ai repris le principe de parallélisation des threads rsync, mais en parallélisant au niveau des fichiers et pas des répertoires. Cela s’adapte mieux à des répertoires avec une forte disparité dans la taille des fichiers. Par exemple une multitude de répertoires avec des petits fichiers (DOC bureautiques, numérisation de papiers administratifs, etc.), et un répertoire avec des films. En parallélisant au niveau répertoire, les petits fichiers sont vite synchronisés, et il reste souvent un seul processus rsync pour le répertoire avec les gros fichiers.

J’ai également repris ce script pour qu’il travaille par niveau de répertoire (il synchronise d’abord la racine, puis les répertoires de niveau 1, 2 … <= $maxdepth

Le script est récupérable ici.

Voici quelques explications sur le code.

Le premier bloc permet d’initialiser les variables les plus courantes : les répertoires, exclusions et point de montage pour hubicfuse. Notez que les exclusions désignent « ce qui commence par ». Les différents PATTERNS sont séparés par des | (pipes). Les slashes sont échappés par des antislashes. Par exemple l’exclusion /_NO_ permet d’exclure rapidement tout répertoire commençant par « _NO_ ». Voir la commande egrep (REGEXP) pour la notation.

On trouve ensuite la fonction principale de synchronisation, avec ses variables, dont certaines peuvent être ajustées :

La fonction hubicmount : comme son nom l’indique monte le système de fichiers hubic, celui-ci n’est pas démonté quand le script se termine normalement.

Le « main » se veut simple puisqu’il est basé sur un « case » énumérant les 3 arguments de ce script : -sync, -backup, -restore.

Enfin un appui sur Ctrl-C pendant l’exécution du script permet de sortir en tuant TOUT les process « rsync ». Ceci n’est possible (pour le moment) qu’en tuant également le process hubicfuse.

C’est pourquoi il vous est demandé de faire un démontage forcé du système de fichier hubicfuse (sudo umount -l hubicfuse) en quittant, sinon il apparaîtra toujours comme monté pour le système.

=====

Merci à Eric pour le tuto et encore bravo pour ce petit script bien pratique. J'espère qu'il vous servira et si vous avez des remarques à faire dessus, les commentaires sont ouverts.

Cet article merveilleux et sans aucun égal intitulé : Synchronisez votre Linux avec Hubic d’OVH ; a été publié sur Korben, le seul site qui t'aime plus fort que tes parents.

Rien à cacher – Le documentaire

mercredi 22 novembre 2017 à 07:56

Il y a une analogie d'Edward Snowden sur la vie privée qui est super connue, mais que j'aime bien, car n'importe qui peut la comprendre :

Dire que votre droit à la vie privée importe peu, car vous n’avez rien à cacher revient à dire que votre liberté d’expression importe peu, car vous n’avez rien à dire. Car même si vous n’utilisez pas vos droits aujourd’hui, d’autres en ont besoin. Cela revient à dire : les autres ne m’intéressent pas.

Je n'avais pas encore pris le temps de regarder le documentaire Nothing To Hide disponible en ligne depuis quelques semaines, et il est important que vous le regardiez aussi (ou le fassiez regarder).

Ce doc soulève la question de l'acceptation de la surveillance de masse par les gens. Les États et les entreprises tentent progressivement de faire entrer dans la normalité l'abandon de la vie privée, et quand on voit le nombre de personnes mal informées qui répètent en boucle "Je m'en fiche, je n'ai rien à cacher", j'ai tendance à croire qu'ils y arrivent très bien.

C'est pour cela que ce genre de documentaire est important. Pour ouvrir cette petite porte mentale qui présentera le problème sous un angle différent de celui qu'on nous propose partout, tout le temps et que malheureusement certains reprennent à leur compte.

Bon visionnage !

Si la gestion des données personnelles vous intéresse, je vous conseille ça aussi:

Rien à cacher ? 20 minutes pour comprendre

Cet article merveilleux et sans aucun égal intitulé : Rien à cacher – Le documentaire ; a été publié sur Korben, le seul site qui t'aime plus fort que tes parents.

Rien à cacher – Le documentaire

mercredi 22 novembre 2017 à 07:56

Il y a une analogie d'Edward Snowden sur la vie privée qui est super connue, mais que j'aime bien, car n'importe qui peut la comprendre :

Dire que votre droit à la vie privée importe peu, car vous n’avez rien à cacher revient à dire que votre liberté d’expression importe peu, car vous n’avez rien à dire. Car même si vous n’utilisez pas vos droits aujourd’hui, d’autres en ont besoin. Cela revient à dire : les autres ne m’intéressent pas.

Je n'avais pas encore pris le temps de regarder le documentaire Nothing To Hide disponible en ligne depuis quelques semaines, et il est important que vous le regardiez aussi (ou le fassiez regarder).

Ce doc soulève la question de l'acceptation de la surveillance de masse par les gens. Les États et les entreprises tentent progressivement de faire entrer dans la normalité l'abandon de la vie privée, et quand on voit le nombre de personnes mal informées qui répètent en boucle "Je m'en fiche, je n'ai rien à cacher", j'ai tendance à croire qu'ils y arrivent très bien.

C'est pour cela que ce genre de documentaire est important. Pour ouvrir cette petite porte mentale qui présentera le problème sous un angle différent de celui qu'on nous propose partout, tout le temps et que malheureusement certains reprennent à leur compte.

Bon visionnage !

Si la gestion des données personnelles vous intéresse, je vous conseille ça aussi:

Rien à cacher ? 20 minutes pour comprendre

Cet article merveilleux et sans aucun égal intitulé : Rien à cacher – Le documentaire ; a été publié sur Korben, le seul site qui t'aime plus fort que tes parents.

Edito du 19/11/2017

dimanche 19 novembre 2017 à 09:07

On est dimanche matin, c'est calme et je me suis dit que j'allais vous écrire un petit édito. Si vous me suivez sur Instagram ou Twitter, vous devez déjà presque tout savoir, mais ce n’est pas grave. Il y a plein de trucs cools cette semaine.

Tout d'abord, ça y est je suis inscrit à la salle de sport. J'ai dit au gérant : "je n’ai jamais fait de sport, je n’aime pas ça et je n’ai pas le temps, qu'est ce que vous me proposez ?". Il m'a répondu : "Pas de problème, j'ai exactement ce qu'il vous faut". Parfait. En plus, c'est un peu tech avec un genre de clé USB qui se branche sur les machines, du coup je peux suivre ma progression sur l'appli mobile. Et cette semaine, je me suis classé 25e. Ce qui est nul, mais super bien pour moi.

Autre truc cool, j'ai fait mon premier escape game hier. C'était chez Steam Escape qui a plusieurs salles un peu partout dans mon coin (Cournon, Vichy, St Étienne, Limoges). Ambiance Steam Punk, avec une enquête à mener dans les wagons de l'Orient Express. Vraiment très bien foutu aussi bien au niveau des énigmes que de l'ambiance générale et des décors. J'ai adoré et j'ai hâte d'y retourner pour mener à bien d'autres missions ! En plus, nous avons réussi, et fini 2e du mois sur cette mission.

Pour terminer, si vous êtes à Paris ce mard 21 novembre, je serai au Dell EMC Forum pour faire une petite conf. J'espère vous y voir nombreux ! Autrement, j'y ferai des interviews sur Periscope et je filmerai peut être aussi quelques confs sympa, donc surveillez mon Twitter mardi si cela vous intéresse.

Voilà pour ma folle actu. Et vous ça roule ?

Cet article merveilleux et sans aucun égal intitulé : Edito du 19/11/2017 ; a été publié sur Korben, le seul site qui t'aime plus fort que tes parents.