Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : Rencontres Fedora 20

#1 17/05/2012 21:11:18

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Backup rsync encfs webdav (Hubic)

Bonjour à tous,

j'essaie de mettre en place une sauvegarde sur Hubic mais j'ai encore qq soucis de performance.

1) d'abord j'ai récupérer un script pour avoir les identifiants Hubic http://www.protocol-hacking.org/public/hubic.pl

#!/usr/bin/perl
#
# $Id: hubic.pl 6 2012-02-08 17:46:06Z gomor $
#
package Hubic;
use strict;
use warnings;

use LWP::UserAgent;

sub new {
   my $self  = shift;
   my $class = ref($self) || $self;

   my %h     = (
      host => 'ws.ovh.com',
      @_,
   );

   my $ua = LWP::UserAgent->new;
   $ua->agent("hubiC/1.0.9 (Windows NT 6.1; fr_FR)");
   $h{_ua} = $ua;

   return bless(\%h, $class);
}

sub getWebdavInfo {
   my $self = shift;

   my $id                 = $self->_postNasLogin;
   my $url                = $self->_postGetNas($id);
   my ($login, $password) = $self->_postGetCredentials($id);

   return ($url, $login, $password);
}

sub _postNasLogin {
   my $self = shift;

   my $ua       = $self->{_ua};
   my $host     = $self->{host};
   my $login    = $self->{login};
   my $password = $self->{password};

   my $params = '{"email":"'.$login.'","password":"'.$password.'"}';

   # Encode characters if URI::Escape is available
   eval("use URI::Escape;");
   if (!$@) {
      print "[DEBUG] URI::Escape available\n" if $self->{debug};
      $params = uri_escape($params);
   }

   # 'POST /cloudnas/r0/ws.dispatcher/nasLogin HTTP/1.1'."\r\n".
   # 'Content-Type: application/x-www-form-urlencoded'."\r\n".
   # 'User-Agent: hubiC/1.0.9 (Windows NT 6.1; fr_FR)'."\r\n".
   # 'Content-Length: 126'."\r\n".
   # 'Connection: Keep-Alive'."\r\n".
   # 'Accept-Encoding: gzip'."\r\n".
   # 'Accept-Language: fr-FR,en,*'."\r\n".
   # 'Host: ws.ovh.com'."\r\n".
   # ''."\r\n".
   # 'session=&params=%7B%20%22email%22%20%3A%20%22<login>%22%2C%20%22password%22%20%3A%20%22<password>%22%20%7D'."\r\n".
   # "\r\n";
   my $req = HTTP::Request->new(
      POST => "https://$host/cloudnas/r0/ws.dispatcher/nasLogin",
   );
   $req->content_type('application/x-www-form-urlencoded');
   $req->content('session=&params='.$params);

   my $res = $ua->request($req);
   if (! $res->is_success) {
      die("FATAL: postNasLogin() failed:\n[", $res->content, "]\n");
   }

   my $reply = $res->content;
   print "[DEBUG] $reply\n" if $self->{debug};

   (my $id = $reply) =~ s/^.*"\s*id\s*?"\s*?:\s*?"\s*(.*?)\s*".*$/$1/;
   print "[DEBUG] Got ID [$id]\n" if $self->{debug};

   return $id;
}

sub _postGetNas {
   my $self = shift;
   my ($id) = @_;

   my $ua   = $self->{_ua};
   my $host = $self->{host};

   # 'POST /cloudnas/r0/ws.dispatcher/getNas HTTP/1.1'."\r\n".
   # 'Content-Type: application/x-www-form-urlencoded'."\r\n".
   # 'User-Agent: hubiC/1.0.9 (Windows NT 6.1; fr_FR)'."\r\n".
   # 'Content-Length: 54'."\r\n".
   # 'Connection: Keep-Alive'."\r\n".
   # 'Accept-Encoding:gzip'."\r\n".
   # 'Accept-Language: fr-FR,en,*'."\r\n".
   # 'Host: ws.ovh.com'."\r\n".
   # ''."\r\n".
   # 'session=<id>'."\r\n".
   # "\r\n";
   my $req = HTTP::Request->new(
      POST => "https://$host/cloudnas/r0/ws.dispatcher/getNas",
   );
   $req->content_type('application/x-www-form-urlencoded');
   $req->content("session=$id");

   my $res = $ua->request($req);
   if (! $res->is_success) {
      die("FATAL: postGetNas() failed:\n[", $res->content, "]\n");
   }

   my $reply = $res->content;
   print "[DEBUG] $reply\n" if $self->{debug};

   (my $url = $reply) =~ s/^.*"\s*url\s*?"\s*?:\s*?"\s*(.*?)\s*".*$/$1/;
   print "[DEBUG] Got URL [$url]\n" if $self->{debug};

   return $url;
}

sub _postGetCredentials {
   my $self = shift;
   my ($id) = @_;

   my $ua   = $self->{_ua};
   my $host = $self->{host};

   # 'POST /cloudnas/r0/ws.dispatcher/getCredentials HTTP/1.1'."\r\n".
   # 'Content-Type: application/x-www-form-urlencoded'."\r\n".
   # 'User-Agent: hubiC/1.0.9 (Windows NT 6.1; fr_FR)'."\r\n".
   # 'Content-Length: 54'."\r\n".
   # 'Connection: Keep-Alive'."\r\n".
   # 'Accept-Encoding: gzip'."\r\n".
   # 'Accept-Language: fr-FR,en,*'."\r\n".
   # 'Host: ws.ovh.com'."\r\n".
   # ''."\r\n".
   # 'session=<id>'."\r\n".
   # "\r\n";
   my $req = HTTP::Request->new(
      POST => "https://$host/cloudnas/r0/ws.dispatcher/getCredentials",
   );
   $req->content_type('application/x-www-form-urlencoded');
   $req->content("session=$id");

   my $res = $ua->request($req);
   if (! $res->is_success) {
      die("FATAL: postGetCredentials() failed:\n[", $res->content, "]\n");
   }

   my $reply = $res->content;
   print "[DEBUG] $reply\n" if $self->{debug};

   (my $username = $reply) =~ s/^.*"\s*username\s*?"\s*?:\s*?"\s*(.*?)\s*".*$/$1/;
   print "[DEBUG] Got username [$username]\n" if $self->{debug};

   (my $secret = $reply) =~ s/^.*"\s*secret\s*?"\s*?:\s*?"\s*(.*?)\s*".*$/$1/;
   print "[DEBUG] Got secret [$secret]\n" if $self->{debug};

   return ($username, $secret);
}

1;

package main;

use Getopt::Std;
my %opts;
getopts('l:dh', \%opts);

if (!$opts{l} || $opts{h}) {
   die("Usage: $0 -l login [-d] [-h]\n");
}

eval("use Term::ReadKey;");
my $password = '';
print "Password:";
if (!$@) {
   print "[DEBUG] Term::ReadKey available\n" if $opts{d};
   ReadMode('noecho');
}
$password = <>;
chomp($password);
print "\n";

my $hubic = Hubic->new(
   login    => $opts{l},
   password => $password,
   debug    => $opts{d},
);
my ($hubicUrl, $hubicLogin, $hubicPassword) = $hubic->getWebdavInfo;

print "URL:      $hubicUrl\n";
print "Login:    $hubicLogin\n";
print "Password: $hubicPassword\n\n";
print "mount -t davfs $hubicUrl /mnt\n";

exit(0);

le résultat

URL:      https://cloudnas1.ovh.com/xxxxx/
Login:    xxxxx
Password: xxxxx

mount -t davfs https://cloudnas1.ovh.com/xxxxx/ /mnt

2) ensuite on passe on montage du dossier Hubic (webdav) avec dvfs (ou davfs2 mais nécessite les droits root)
/mnt/Hubic --> le point de montage

wdfs https://cloudnas1.ovh.com/xxxxx/  '/mnt/Hubic'  -o username=xxxxx,password=xxxxx

pour plus d'info sur les options wdfs

wdfs --help

3) on met en place le chiffrement des données avec encfs
/mnt/Hubic --> dossier recevant les données chiffrées.
/media/Backup --> dossier temporaire avec les données en clair à copier dedans

encfs '/mnt/Hubic' '/media/Backup'

si c'est la première fois il faudra le paramétrer, pour plus d'info

man encfs

4) on ajoute les données à sauvegarder dans le dossier /media/Backup
on peut utiliser rsync, mais suivant les options rsync va recopier l'intégralité des données au lieu de synchroniser

rsync -r -o -g -v --progress --delete -l -i -s /media/DocumentsàSauvegarder /media/Backup/

5) pour finir

fusermount -u '/media/Backup' ;
fusermount -u '/mnt/Hubic'

Dernière modification par nIQnutn (18/05/2012 18:28:34)

Hors ligne

#2 18/05/2012 11:24:50

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

Bonjour à tous,

j'essaie de mettre en place une sauvegarde sur Hubic mais j'ai qq soucis.
j'ai d'abord récupéré les info pour monter l'espace de stockage dans Nautilus (webdav)
j'ai essayé encfs sur un dossier local et tout marche bien.

j'initialise encfs

encfs '/home/nIQnutn/.gvfs/Partage WebDAV sur cloudnas1.ovh.com en tant que cloudnas/crypte' '/tmp/blabbb'

je rentre lemot de passe et le fichier .encfs6.xml est créé.
mais ça se gate quand je copie un fichier dans /tmp/blabbb

Erreur lors de l'ouverture du fichier « /tmp/blabbb/fichier.jpg » : Aucun fichier ou dossier de ce type

rien à faire, ça marche pas comme ça.

Quand je copie les données chiffrées depuis mon PC et que je les copie sur Hubic, j'arrive bien à ouvrir le dossier et déchiffrer les données.

en utilisant davfs j'ai pas de pb mais j'ai besoin de me logger en root

mount -t davfs https://cloudnas1.ovh.com/4d50ed60f9e50a3c2777f/ /mnt

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

je viens d'installer wdfs qui ne nécessite pas d'être root pour monter le FS.
ça ne pose pas de pb avec encfs.

wdfs https://cloudnas1.ovh.com/4d50ed86c0a3c2777f/ '/tmp/wdfs'  -o username=*****,password=**************
encfs '/tmp/wdfs/crypte' '/tmp/decrypte'

je vais voir si j'arrive à synchroniser avec rsync mes dossiers.

Dernière modification par nIQnutn (18/05/2012 18:03:46)

Hors ligne

#3 18/05/2012 11:38:06

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 17 155

Re : Backup rsync encfs webdav (Hubic)

Super intéressant ça. Tiens nous au courant.

Peut-être pourrais-tu modifier le titre de ce fil, il sera plus facile à retrouver et il peut intéresser beaucoup de monde.


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#4 18/05/2012 15:18:14

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

j'ai lancé rsync et ça marche. par contre avec ma connexion c'est très lent donc j'ai pas pu synchroniser mes 20Go.
je vais testé encore un peu pour vérifier que tout fonctionne correctement et éventuellement je peux faire un petit tuto pour mettre en place une sauvegarde chiffrée sur Hubic en utilisant rsync et encfs.

Hors ligne

#5 18/05/2012 15:58:44

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 17 155

Re : Backup rsync encfs webdav (Hubic)

Oui. Llaumgui cherchait justement un système de backup de ce genre au début de la semaine.

(Pense à modifier ton titre)


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#6 20/05/2012 17:38:03

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

En testant, je me rends compte que c'est pas très performant.
J'ai 22 Go de données à sauvegarder et principalement des petits fichiers, et l'initialisation est très longues et avec ma connexion c'est vraiment long pour uploader un simple PDF.

l'idéal serait de chiffrer puis de synchroniser les données mais ça oblige à dupliquer les données.

Hors ligne

#7 20/05/2012 19:56:03

llaumgui
Administrateur
Administrateur
Lieu : Pignan
Inscription : 03/09/2004
Messages : 2 378
Site Web

Re : Backup rsync encfs webdav (Hubic)

nouvo09 a écrit :

Oui. Llaumgui cherchait justement un système de backup de ce genre au début de la semaine.

(Pense à modifier ton titre)

Yes et c'est bien moins cher que Dropbox...


pl_fedora.png Station : F20 x86_64 sur Core i5 2800 | Portable : F20 x86_64 sur ASUS UL30Vt
Le blog de llaumgui : Le journal d'un expert technique en solutions open-source, contributeur à des projets libres.

Hors ligne

#8 20/05/2012 21:29:49

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

je sais pas si c'est adapté à mon débit ou si ça bloque ailleurs mais rsync m'annonce:
245:18 écoulé, 1015:09 restant progression globale 20%



OVH

Vos données sont stockées en France, dans les propres datacentres d’OVH

Dropbox

Dropbox utilise Amazon S3 pour le stockage des données.

Autant dire qu'en cas de pb, tu peux attendre un moment.

Hors ligne

#9 18/06/2012 21:01:38

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

Hello les amis de Fedora,

j'avais déjà regardé la chose (WebDAV + encfs), à l'époque avec Box.net, qui existe toujours est est très fiable, mais n'offre que 5G d'espace gratuit.

Hubic est plus "généreux", mais souffre de grave défauts de jeunesse : dimanche (17 juin 2012) par exemple, c'était planté de 14h00 jusqu'à lundi matin. Fâcheux si on a un besoin urgent de récupérer des données...

Bref, pour apporter ma pierre au moulin de ce post :

-1) davfs2 fonctionne parfaitement en "non-root"... c'est juste un peu "coriace" à mettre en place !
Vous pouvez certainement suivre (et adapter) le processus que j'ai décrit pour Ubuntu ici : http://doc.ubuntu-fr.org/davfs2
Le packaging étant différent sur Fedora, il est possible que le dpkg-reconfigure n'existe pas ou soit fait différemment. A mon avis, le seul truc que fait la commande dans ce cas (à vérifier !) est que ça met le suid de mount.davfs, de façon qu'un utilisateur non root puisse lancer la commande.

-2) je ne connaissais pas wdfs, ça fonctionne mais ça a l'air "pas fini" comme machin (du moins sur Ubuntu). En principe, un file-system qui utilise fuse devrait passer en daemon une fois lancé, sauf si on utilise l'option -f pour le forcer à ne pas le faire. Là, le machin reste constamment au premier plan !.. Donc si on veut faire un script et enchaîner sur le montage encfs, c'est moins évident !..

Je n'ai pas encore bien expérimenté avec wdfs, mais davfs a l'air d'être "écrit avec les pieds" pour ce qui concerne le multi-tâche. En effet, si on lance un transfert volumineux, tout est bloqué, même le listage de répertoire (un simple ls) ... jusqu'à ce que le transfert soit fini. Ca ressemble donc à une sérialisation complète de toutes les actions. Alors c'est sûr que comme ça c'est plus facile à coder, mais du coup ça rend le système très peu réactif, voire donne l'impression que tout est planté.

rsync ne fonctionne pas non plus avec davfs : dans le sens local => cloud, on récupère une erreur 22 (sans doute des caractères mal 'escapés'), dans l'autre sens, cela fonctionne, mais les dates sur le partage webdav sont celles de la création du fichier sur le cloud, et pas la date du fichier d'origine qu'on a copié !.. Donc si on fait une copie local => cloud (cp, puisque rsync ne marche pas dans ce sens !) plus un rsync cloud => local, on se prend une recopie intégrale... pas cool.

Je vais expérimenter avec wdfs, pour voir si outre son côté "pas fini", il présente les mêmes défauts de conception que davfs. Et au pire je tâcherai de me remettre à mon programme de montage distant de la Freebox V6 pour l'adapter à WebDAV !..


[EDIT] : bon, ben pas mieux pour wdfs, voici ce qu'on lit dans le README livré avec le source:

wdfs a écrit :

limitations of this implementation:
- wdfs is not (yet) multithread safe. it always uses fuse single thread mode.
- read/write of big files (~ 50 MB+) is slow, because the _complete_ file
   will be GET/PUT on a request.

Dernière modification par Zakhar (18/06/2012 21:29:10)

Hors ligne

#10 19/06/2012 18:39:44

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

Pour que Rsync ne recopie pas intégralement les données il faut lui mettre l'option "checksum"

Hors ligne

#11 19/06/2012 19:30:08

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

nIQnutn a écrit :

Pour que Rsync ne recopie pas intégralement les données il faut lui mettre l'option "checksum"

Certes... mais ça ne "résout" pas le problème !

Avec checksum, rsync va faire le checksum des données situées sur ton stockage WebDAV et donc il devra lire 100% des données. Tu gagnes juste le temps de réécriture en local, mais celui-ci est négligeable par rapport au temps de transfert. Qui plus est, même pas sûr que tu gagnes quoi que ce soit, parce que certes tu ne feras pas d'écritures locale, mais tu vas aussi faire le checksum local de 100% des fichiers ! Donc non seulement ça ne "résout" pas le temps énorme du rsync, mais ça empire probablement la chose. hammer

... enfin tout ça, à la base, c'est certainement qu'en plus d'une gestion déficiente du mutl-tâche, davfs doit probablement mal gérer les attributs des fichiers (à moins que ce ne soit OVH... à vérifier !)

Hors ligne

#12 28/06/2012 23:13:09

Valdes
Dovahkiin
Lieu : Lille
Inscription : 04/09/2007
Messages : 2 084

Re : Backup rsync encfs webdav (Hubic)

Salut à tous.

Je déterre le topic pour vous faire part de mon expérience (heureuse) avec messieurs Webdav et hubiC.
Voici la procédure pour monter votre dossier hubiC sur votre système (source). Certes, c'est pas exactement le sujet du topic, mais ça peut être utile :

Installer davfs2 :

# yum install davfs2

Après avoir récupéré vos identifiants avec le script ici

# echo "https://cloudnas1.ovh.com/votreespaceovh login password" >> /etc/davfs2/secrets
# mkdir /home/yourlogin/.davfs2
# chown yourlogin:yourlogin /home/yourlogin/.davfs2
# cp /etc/davfs2/secrets /home/yourlogin/.davfs2
# chown yourlogin:yourlogin /home/yourlogin/.davfs2/secrets

Je voulais monter le dossier dans /media, mais à chaque reboot tout disparaît... C'est normal ? Du coup, je l'ai mis dans /mnt

# mkdir /mnt/hubiC

Bon, là, je suis passé par system-config-users (en root) au lieu de la ligne çi-dessous. C'est pas bien, je sais, mais bon...

# usermod -aG davfs2 votrelogin
# chmod u+s /sbin/mount.davfs

Et enfin dans le fstab

https://cloudnas1.ovh.com/identifiant/	/mnt/hubiC davfs defaults,noauto,user,uid=Val,gid=davfs2 0 0

Sans le noauto, ça plante au démarrage (normal, j'ai pas encore le réseau au boot).

Le problème qui est survenu est le suivant :

$ mount /mnt/hubiC/
/sbin/mount.davfs: / is the home directory of user nobody.
You can't mount into another users home directory

Soit. J'ai donc demandé de l'aide à Google (ici). Réponse :

$ awk -F: '($6 == "/") {print}' /etc/passwd
nobody:x:99:99:Nobody:/:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
nm-openconnect:x:995:993:NetworkManager user for OpenConnect:/:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

Et pour chaque ligne :

# usermod -d /dev/null nobody

Sauf que ça ne marche pas pour dbus vu qu'il est loggé. Donc il faut redémarrer en init 1 pour modifier ça.

Et maintenant, ça marche. Et pour faire des backups sécurisés : DéjàDup avec mot de passe dans le dossier /mnt/hubiC. Nickel. Bon sauf que DéjàDup termine direct le backup et que mon réseau sature en upload le temps d'envoyer les fichiers - ce qui fait planter Nautilus. Du coup je sais pas trop si DéjàDup est "au courant" que l'upload est en cours ou s'il pense que tout est écrit (si c'est ça, ça veut dire que tout se met en cache quelque part sur mon disque - ce qui me fait un peu peur pour le jour où je ferai mon premier GROS backup...).

J'aurais toutefois une question : comment peut-on faire pour faire apparaître le dossier /mnt/hubiC comme un lecteur réseau (ou une clé USB), c'est à dire la possibilité de le monter en cliquant dessus dans Nautilus et de le démonter en cliquant sur le symbole "Eject" ? Non parce que devoir ouvrir un terminal et taper

$ mount /mnt/hubiC

pour monter le bouzin, c'est pas super esthétique sous Gnome 3...


Fedora 19 x86_64 sur Dell Latitude E6400
Prends le temps d'écrire correctement, et on prendra le temps de répondre correctement.

Hors ligne

#13 28/06/2012 23:47:25

nIQnutn
Membre
Inscription : 09/12/2010
Messages : 169

Re : Backup rsync encfs webdav (Hubic)

Pour avoir accès au dossier directement dans Nautilus
Nautilus -> Fichier -> Se connecter à un serveur
puis créer un signet

Hors ligne

#14 28/06/2012 23:52:46

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

Tu as l'air d'avoir fait tout ce qui indiqué dans mon tuto Ubuntu, avec les adaptations correctes pour Fedora.

Pour ce qui est du montage via Nautilus, ici (Precise 64) ça fonctionne parfaitement sans avoir à créer de signet. Peut-être est-ce simplement parce que le point de montage se situe dans mon /home au lieu d'être dans /mnt

Ca me semble plus logique de le mettre dans le /home vu que c'est en fait un montage utilisateur, non visible des autres utilisateurs du PC.

Ah, et une petite astuce, quand tu donnes un tutoriel où il faut remplacer le nom d'utilisateur, le mieux est de le donner en utilisant la variable $USER, et si c'est pour désigner le 'home' de l'utilisateur, d'utiliser le raccourci : ~

Exemple:

chown $USER:$USER ~/.davfs2

(Ca suppose tout de même que le user est dans un groupe du même nom, ce qui est généralement le cas pour l'utilisateur principal du PC !)

Ainsi donnée, la commande peut être copiée/collée par un utilisateur, sans qu'il ait à remplacer des bouts de la ligne de commande.

Hors ligne

#15 29/06/2012 00:06:52

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

Ah et oui, davfs2 a un comportement désastreux.

C'est ce que j'expliquais plus haut, il a probablement été écrit "mono-thread". Cela fait que lorsque tu es en train de faire un upload (et c'est long en ADSL) les demande de listage (et Nautilus en fait plein sans même que tu le saches !) sont en attente. Par conséquent ton système semble "bloqué", et c'est assez moche. Un autre truc moche, c'est qu'il télécharge tout le fichier dans la cache avant de répondre aux ordres de lecture... ça c'est assez bourrin si on veut juste les premiers octets d'un très gros fichier !..
Si tu veux écrire un file-system Fuse, il FAUT faire un truc multi-tâche (multi-thread) sinon le FS présente le mauvais comportement décrit plus haut. Et si tu te débrouilles bien, il n'y a pas de raison de ne pas pouvoir traiter une demande de listage en parallèle d'une lecture ou d'une écriture.
J'ai fait ainsi sur mon file-system expérimental pour monter une Freebox à distance, et il est très réactif, sans commune mesure avec davfs !..

Et aussi, comme tu le constates, davfs2 utilise effectivement une cache.
Si tu avais suivi le tutoriel en entier, il y a un autre fichier à copier dans ~/.davfs2, c'est celui de la configuration. Ainsi tu peux configurer par utilisateur. Sinon davfs2 prendra le fichier dans son répertoire d'installation et c'est moche !.. Dans ce fichier de configuration tu peux jouer par exemple sur la taille de cache et bien d'autres choses.

Par défaut la cache est dans le répertoire ~/.davfs2/cache, et elle fait 50M.

Lorsque tu "démontes" proprement ton filesystem davfs, il va "synchroniser", c'est à dire qu'il terminera toutes les écritures en court avant de rendre la main. Donc, sauf si tu éteins "sauvagement" ton PC, en principe tout sera uploadé correctement.

Conclusion, compte tenu de l'état de davfs2, son usage est réservé à une manipulation de "petits fichiers", ainsi les effets de bord décrits plus haut n'ont plus trop d'impact.

... et une ré-écriture complète s'impose !.. Je suis dessus, mais j'avance pas vite (j'ai aussi un travail à temps plein et d'autres activités roll )

Dernière modification par Zakhar (29/06/2012 00:08:18)

Hors ligne

#16 30/06/2012 11:05:06

Valdes
Dovahkiin
Lieu : Lille
Inscription : 04/09/2007
Messages : 2 084

Re : Backup rsync encfs webdav (Hubic)

@nIQnutn : you made my day!
Ptin j'y avais même pas pensé, alors que ça fait exactement ce que je veux... Merci !

@Zakhar : ok. J'avais aussi lu des infos de ce genre sur davfs, mais j'avais pas creusé. C'est de l'optimisation après.
Par contre, en utilisant la technique magique du signet, est-ce que Nautilus utilise davfs ? Si oui, comment lui demander d'utiliser un FS multi-thread à la place ?


Fedora 19 x86_64 sur Dell Latitude E6400
Prends le temps d'écrire correctement, et on prendra le temps de répondre correctement.

Hors ligne

#17 30/06/2012 11:26:03

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

En toute logique, Nautilus doit utiliser ce qui figure dans le /etc/fstab comme montage signalés 'user'.

Et lorsqu'on clique sur un tel montage, il le monte !

Donc pour utiliser un autre FS il suffit que ce soit fait ainsi dans le /etc/fstab

Par exemple, pour monter sa Freebox on peut utiliser curlftpfs (qui lui est mieux écrit et davantage multi-tâche), et faire l'équivalent dans le /etc/fstab mais avec un montage curlftpfs au lieu de davfs

Hors ligne

#18 30/06/2012 12:05:15

Valdes
Dovahkiin
Lieu : Lille
Inscription : 04/09/2007
Messages : 2 084

Re : Backup rsync encfs webdav (Hubic)

Tu veux dire qu'il faudrait que je modifie cette ligne de mon fstab

https://cloudnas1.ovh.com/ID/	/mnt/hubiC davfs defaults,noauto,users,uid=Val,gid=davfs2 0 0

par

https://cloudnas1.ovh.com/ID/	/mnt/hubiC curlftpfs defaults,noauto,users,uid=Val 0 0

?

Mais comment savoir si hubiC supporte le curlftpfs ?


Fedora 19 x86_64 sur Dell Latitude E6400
Prends le temps d'écrire correctement, et on prendra le temps de répondre correctement.

Hors ligne

#19 30/06/2012 12:13:20

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

lol non !

C'est certain que ça ne marchera pas !

Je citais la freebox en exemple (qui a un serveur ftp) et tu peux monter (à tester) avec

ftp://user:password@mafreebox.freebox.fr/	/mnt/Freebox curlftpfs defaults,noauto,users,uid=Val 0 0

Hors ligne

#20 30/06/2012 12:25:35

Valdes
Dovahkiin
Lieu : Lille
Inscription : 04/09/2007
Messages : 2 084

Re : Backup rsync encfs webdav (Hubic)

Ok. Bon le coup de la Freebox, ça ne m'intéresse que moyennement, mais merci pour le tuyau wink

Mais quid de fusefs ? C'est multi-threadé ? J'arrive pas à trouver d'infos consistantes sur le Net... Et à priori, fusefs devrait marcher sur hubiC.


Fedora 19 x86_64 sur Dell Latitude E6400
Prends le temps d'écrire correctement, et on prendra le temps de répondre correctement.

Hors ligne

#21 30/06/2012 12:30:13

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

Connais pas fusefs...

Là j'essaye avec gvfs, il marche bien (c'est ce qu'utilise Nautilus) puisque c'est le machin de Gnome, mais la documentation est vraiment à chier... c'est à dire inexistante, il n'est même pas dans le 'man', et lancé avec --help, c'est plutôt laconique !

Avec gigolo, on peut faire un montage visible de Nautilus, et même en faire un signet, mais mon besoin c'est d'y accéder en ligne de commande, ce que ne permet pas la chose (ou je n'ai pas la doc pour le faire).

Si le seul besoin est d'y accéder via Nautilus, Gigolo, un signet, montage, et voila !
Mais comme on n'y a pas accès via un montage "normal", du coup pas possible de faire du encfs par dessus :/

Dernière modification par Zakhar (30/06/2012 12:31:00)

Hors ligne

#22 30/06/2012 14:02:43

Valdes
Dovahkiin
Lieu : Lille
Inscription : 04/09/2007
Messages : 2 084

Re : Backup rsync encfs webdav (Hubic)

Ok. C'est ce que j'ai fait, mais le coup du cache m'embête. Je vais essayer de voir si on peut utiliser un "FS réseau" multi-threadé avec Nautilus.


Fedora 19 x86_64 sur Dell Latitude E6400
Prends le temps d'écrire correctement, et on prendra le temps de répondre correctement.

Hors ligne

#23 30/06/2012 14:41:12

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

Avec Nautilus et sans encfs, oui, c'est natif et ça utilise gvfs (module DAV).

Il suffit d'aller dans "Aller à/Emplacement" et donner les coordonnées de ton montage. Ensuite tu mets un signet si tu veux éviter d'avoir à retaper à chaque fois.

Par contre, comme expliqué plus haut, ce n'est pas un réel "montage", mais plutôt un montage au sens Gnome (GIO) qui est donc inutilisable de programmes tels que VLC (par exemple pour lire ta musique directement).
Bien sûr, le contournement consiste alors à copier le fichier de musique sur le disque local et l'y lire... mais c'est moche !

Donc tout dépend de ton "use case" (c'est à dire de ce que tu veux faire exactement) qu'il faut bien que tu précises. Une fois que tu as fait le travail de préciser exactement ce que tu veux faire de ce montage, en général tu as à moitié trouvé la solution !..

Ne confondons pas "solution" et "besoin" ! Le post d'origine ici parle d'empiler un accès DAV avec ENCFS, c'est bien particulier. Si ce n'est pas exactement ce besoin que tu as... eh bien il y a des solutions bien plus simple.

Dernière modification par Zakhar (30/06/2012 14:41:59)

Hors ligne

#24 18/08/2012 10:37:53

llaumgui
Administrateur
Administrateur
Lieu : Pignan
Inscription : 03/09/2004
Messages : 2 378
Site Web

Re : Backup rsync encfs webdav (Hubic)

Lut,

je déterre un peu le topic.

J'ai pus faire une synchro via DAVFS. Pas de problème mais pour le cryptage ? encrypt m'oblige à avoir une version en claire sur mon DD ce qui me fait doublons.... PAs moyen de faire du lucks ?


pl_fedora.png Station : F20 x86_64 sur Core i5 2800 | Portable : F20 x86_64 sur ASUS UL30Vt
Le blog de llaumgui : Le journal d'un expert technique en solutions open-source, contributeur à des projets libres.

Hors ligne

#25 18/08/2012 11:05:35

Zakhar
Membre
Inscription : 18/06/2012
Messages : 9

Re : Backup rsync encfs webdav (Hubic)

llaumgui a écrit :

Lut,

je déterre un peu le topic.

J'ai pus faire une synchro via DAVFS. Pas de problème mais pour le cryptage ? encrypt m'oblige à avoir une version en claire sur mon DD ce qui me fait doublons.... PAs moyen de faire du lucks ?

Non, les fichiers "en clair" sont une vision théorique, ils ne sont stockés nulle part !
En réalité il est bien évident qu'à un moment donné tu as eu le fichier "en clair"... il a bien fallu que tu le sauvegardes et le chiffres ! Mais une fois chiffré, tu peux supprimer la version "en clair" si ça te chante (et si tu as confiance !).

Encfs fonctionne à partir du répertoire chiffré, qui lui doit exister (en local ou à distance si tu fais comme indiqué sur ce post) et te donne une vision "en clair", mais cette vision est juste la traduction de encfs et n'est réellement stockée nulle part même si ça apparaît dans ton arborescence.

Luks... bah non c'est pas du tout cet usage là !

Dernière modification par Zakhar (18/08/2012 11:05:55)

Hors ligne

Pied de page des forums