Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/05/2009, à 12:45

Autiwa

[Résolu] unison mountpoint et relative path

ça fait trois jours que j'essaye de le faire marcher sans succès...

Mon problème est le suivant, j'ai deux ordis que j'utilise, un coup la semaine, un coup le week-end. Il faut donc que je synchronise les dossiers entre temps. rsync ne permet pas ça vu qu'il écrase l'un des deux, alors unison me semblait tout dévoué à cette tâche.

Je veux donc, sur chaque PC, synchroniser avec le même disque dur externe.

Après quelques déconvenues, j'ai forcé le montage de l'UUID du disque externe sur /media/stockage (il était là avant, mais au cas où, j'ai fait ça). petite précision, toutes les partitions, y compris mon disque dur externe, sont formatés en ext3.

J'ai les droits sur le disque externe, sauf qu'il repars de zéro à chaque backup, voici ce qu'il m'affiche :

ooking for changes
Warning: No archive files were found for these roots, whose canonical names are:
	/media/documents/Photos
	/media/stockage/Photos
This can happen either
because this is the first time you have synchronized these roots, 
or because you have upgraded Unison to a new version with a different
archive format.  

Update detection may take a while on this run if the replicas are 
large.

Unison will assume that the 'last synchronized state' of both replicas
was completely empty.  This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.

If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations.  See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.

Donations to the Unison project are gratefully accepted: 
http://www.cis.upenn.edu/~bcpierce/unison

Press return to continue.[<spc>]

Sachant que la synchronisation prend plus d'une heure, c'est un peu chiant.

J'ai essayé d'utiliser les options suivantes

#vérifie que le périphérique externe est bien monté pour éviter une synchronisation supprime tout parce que le dossier amovible est vide.
mountpoint = /media/stockage

# Options du journal
log = true
logfile = /home/autiwa/.unison/logunison

#synchro des dates
times = true

#pour forcer unison à garder la dernière version. Si on veut garder la plus vieille version, il faut utiliser l'option "older"
force = newer

#demande une confirmation quand tout un dossier de synchronisation va être supprimé
confirmbigdeletes = true

mais j'obtiens l'erreur suivante :

Error: The path '/media/stockage' is not a relative path

L'erreur vient peut-être du fait que c'est un disque dur externe, mais je ne comprends pas comment configurer ça, quelqu'un a une idée?

PS : voici un fichier qui ne marche pas (en fait, j'ai fait un fichier common et des include comme dans les tutos, mais pour faire plus simple, j'ai fait un fichier default.prf qui contient les lignes suivantes, et qui ne marche pas non plus de toute façon) :

# Roots of the synchronization
root = /media/documents
root = /media/stockage/backup

# Names and paths to ignore:
ignore = Name *~
ignore = Name .*~

#Fichiers Produits par compilation LaTeX que l'on ignore
ignore = Name *.aux
ignore = Name *.ilg
ignore = Name *.lof
ignore = Name *.lot
ignore = Name *.out
ignore = Name *.toc
ignore = Name *.bbl
ignore = Name *.blg

#vérifie que le périphérique externe est bien monté pour éviter une synchronisation supprime tout parce que le dossier amovible est vide.
mountpoint = /media/stockage

# Options du journal
log = true
logfile = /home/autiwa/.unison/logunison

#synchro des dates
times = true

#pour forcer unison à garder la dernière version. Si on veut garder la plus vieille version, il faut utiliser l'option "older"
#force = newer

#demande une confirmation quand tout un dossier de synchronisation va être supprimé
confirmbigdeletes = true

#puis les sous répertoires
path=clean
path=Cours
path=Documents_Officiels
path=Downloads
path=Journal
path=site
path=TeX
path=vectoriel

Quand je le lance, il fait défiler plein de ligne, mais rien n'est synchronisé, il me demande à chaque fois de continuer en appuyant sur entrée alors que c'est pas la première fois que je le lance, j'ai beau regarder mes .prf, ça ressemble comme deux gouttes d'eau aux .prf des tutos du net.

Ya pas un pro d'unison par là, je commence à désespérer. Sans un bon logiciel pour synchroniser, c'est carrément invivable d'avoir deux pc de travails, et ya pas l'air d'avoir d'alternative (j'ai vu fullsync)

Dernière modification par Autiwa (Le 05/01/2010, à 20:42)


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#2 Le 24/05/2009, à 15:54

Autiwa

Re : [Résolu] unison mountpoint et relative path

help, par pitié, une âme charitable.


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#3 Le 24/05/2009, à 15:59

anonym_user

Re : [Résolu] unison mountpoint et relative path

C'est vrai que la synchro sous Ubuntu c'est pas génial. Même avec la doc on a du mal a s'en sortir. Sous Win il y avait Ultrabackup qui marchait bien mais je n'ai pas trouvé d'équivalent sous Ubuntu. Ce qui me semble le plus proche est Conduit mais je trouve qu'il y a encore pas mal de bug. Notamment les répertoires à synchronisé "disparaissent" du paramétrage quand on a pas accès au réseau et ne réapparaissent pas ensuite, donc faut tout reconfigurer.
Donc je profite de ton topic pour faire moi aussi un appel à la communauté.

#4 Le 24/05/2009, à 16:25

incises

Re : [Résolu] unison mountpoint et relative path

Apparemment il voudrait que tu exprimes /media/stockage en termes de chemin relatif.
Ce qui donnerait si tu es dans /
media/stockage (sans la barre oblique initiale=)
ou si tu étais dans /media/machin
../stockage
etc. peux-tu essayer de ce côté ?

Par ailleurs : tu n'as pas pu obtenir une version graphique d'Unison on dirait ?

Si je comprends bien, ce n'était pas la première fois que tu lançais Unison sur ces deux répertoires ? ça marchait avant ?

Dernière modification par incises (Le 24/05/2009, à 16:29)

Hors ligne

#5 Le 24/05/2009, à 16:45

Autiwa

Re : [Résolu] unison mountpoint et relative path

ça n'a jamais marché smile

Mais là j'ai essayé en virant le mountpoint, et ça marche. Celà dit, je trouve ça con qu'on ne puisse pas spécifier un chemin absolu. Et ça, c'est clair nulle part sur le net (en tout cas pas pour quelqu'un comme moi)

Alors, j'ai essayé avec un chemin relatif et j'obtients cette erreur :

Fatal error: Path /media/stockage/backup / ../../media/stockage is designated as a mountpoint, but points to nothing on host autiwa-desktop

[edit]
J'ai préparé le bout de texte suivant pour rajouter dans la doc au cas où aucun de nous ne trouve, je pense que ça pourrait être très utile que l'on spécifie explicitement que ces explications sont attendues.

FIXME l'utilisation de cette option n'est pas vraiment claire pour des utilisateurs lambda (dont moi). Apparemment, il ne faut pas spécifier des chemins absolus, et il n'aime pas non plus les chemins relatifs. Exemple ''unison documents -mountpoint=/media/stockage'' me renvoie comme erreur que ce n'est pas un chemin relatif. La même chose avec ../../media/stockage me renvoie une autre erreur, et aucune doc n'explique clairement l'utilisation de cette option pourtant essentielle. À lire les docs, on dirait que c'est immédiat.
[/edit]

Dernière modification par Autiwa (Le 24/05/2009, à 16:55)


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#6 Le 01/11/2009, à 13:49

RENOO

Re : [Résolu] unison mountpoint et relative path

Bonjour,

J'ai le meme probleme, je n'arrive pas a indiqué a unison qu'il s'agit d'une syncronisation sur une clé USB pour qu'il n'effectue pas la syncro si ma clé n'est pas présente.

@Autiwa
Tu as trouvé comment marchait l'option mountpoint d'Unison ?

Merci d'avance

Hors ligne

#7 Le 01/11/2009, à 13:57

Autiwa

Re : [Résolu] unison mountpoint et relative path

non, pas du tout. Unison m'a gonflé, je suis revenu à rsync en me faisant un script un peu plus complexe.


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#8 Le 01/11/2009, à 16:41

RENOO

Re : [Résolu] unison mountpoint et relative path

Ok,

J'ai configuré mes mirroirs entre 2 PC assez proprement avec Unison. Je voudrais utiliser le meme soft pour une clé USB...
Je posterai ici si je trouve l'option qui va bien

A +

Hors ligne

#9 Le 23/11/2009, à 21:16

iri

Re : [Résolu] unison mountpoint et relative path

Bonsoir,

RENOO a écrit :

Tu as trouvé comment marchait l'option mountpoint d'Unison ?

Effectivement, ce n'est pas très clair dans la documentation.
Sous réserve, d'après ce que j'ai compris, l'option 'mountpoint' demanderait de mettre un chemin relatif par rapport au chemin indiqué à l'option 'root' local et sans le slash initial

Exemple de profil (extrait) :

root=/chemin/absolu/local/de/mes/fichiers/à/copier/
root=/media/diskusb/chemin/où/les/copier/
mountpoint=../../../../media/diskusb

le mountpoint se ferait en fonction du premier root et sans le slash.

J'espère ne pas me tromper, cela fonctionne chez moi.

Note : le chemin local peut être relatif au chemln où est lancé unison.
Par exemple, si les fichiers à synchroniser sont sur ~/Bureau/works on peut mettre

root=Bureau/works/

et on lance unison :

$ unison ceprofil

ce qui reviendrait à paramètrer 'mountpoint' en relatif depuis le chemin où est lancé unison. C'est, à mon avis, plus simple si on appelle unison toujours depuis le même emplacement (un script bash par exemple)

Hors ligne

#10 Le 24/11/2009, à 00:16

RENOO

Re : [Résolu] unison mountpoint et relative path

Salut Iri,

J'aime bien tes explications. Je vais essayer cela demain car il est trop tard ce soir.
Pour la 2eme partie de ton post "Note", je trouve un peu dangereux de mettre des chemins relatifs par rapport au repertoire ou est lancé unison. Pour mon cas, je lance mes scripts bash en automatique mais je lance parfois unison en ligne de commande pour effectuer mes backup à la main. Histoire d'etre sur que les dernieres versions de mes fichiers soient backupes . Et la je ne réfléchi pas toujours depuis quel répertoire je lance çà.

Merci en tout cas pour tes infos, je me faisais parfois des sueurs froides lors des transferts sur disk amovible.

Hors ligne

#11 Le 24/11/2009, à 10:42

iri

Re : [Résolu] unison mountpoint et relative path

Salut,

Si nous sommes plusieurs à tenter  l'expérience, nous aurons plus de retour pour affiner l'utilisation/configuration d'unison.

Je le répète, mes explications ne sont que le retour de ma propre expérience, mais je peux être dans un cas plus ou moins particulier. Donc faire une sauvegarde manuelle avant (ou tester sur un répertoire avec un contenu fictif) de faire cette manip !

Hors ligne

#12 Le 24/11/2009, à 19:34

RENOO

Re : [Résolu] unison mountpoint et relative path

De retour

Effectivement, grace à tes explications, l'option mountpoint fonctionne parfaitement :

Lorsque je lance la syncronisation lorsque la clé est branchée, le mirroir s'effectue. Lorsque la clé n'est pas montée, un message d'erreur apparait. Unison pourrait croire que le dossier sur la clée est effacée sans cette option !!

Merci

Quand à l'affinage, je suis entièrement d'accord avec toi, mon commentaire n'était que mon retour d'expérience.

Hors ligne

#13 Le 25/11/2009, à 17:52

incises

Re : [Résolu] unison mountpoint et relative path

Les informations de notre ami iri sont extrêmement intéressantes et peuvent être utiles.

Cela dit, je n'ai, pour ma part, jamais à me servir de cela, car lorsque je branche un disque externe - qu'il s'agisse d'une clé USB ou d'un disque dur externe - celui-ci crée automatiquement son répertoire dans /media

Par exemple, je vais avoir après branchement de mon DD un
/media/SauvDD
qui se crée (mais quand le DD n'est pas branché - et monté -  il n'y aura pas de répertoire SauvDD dans media).
Du coup, si j'ai par exemple dans mon .prf pour Unison, simplement ceci (sans usage de "mountpoint") :


# Les deux répliques
  root = /
  root = /media/SauvDD/

alors, si je lance Unison avec ce profil sans que le DD ne soit monté (et donc  sans  /media/SauvDD), j'aurai automatiquement un message d'erreur
(Fatal error Cannot find canonical name of /media/SauvDD etc.)  sans avoir besoin de recourir à mountpoint.

De même avec une clé USB j'avais un profil contenant ceci :

# Répertoires 'roots'
root = /home/toto/Documents/
root = /media/CLE_USB/Documents/

brancher la clé USB créait le répertoire CLE_USB dans /media, sans clé branchée pas de /media/CLE_USB et il y avait un message d'erreur si je lançais Unison avec ce profil.


Je suis un tout petit peu étonné que les choses ne fonctionnent pas ainsi chez certains d'entre vous.
Faut-il comprendre que vous montez vos disques externes dans un répertoire qui ne leur est pas propre ?

EDIT Autre chose : il semblerait qu'Autiwa n'utilise pas l'interface graphique d'Unison. C'est dommage (sauf raison spéciale de travailler en pure console) : le maniement est beaucoup plus agréable (et même plus sûr) avec l'interface graphique. Pour cela il faut simplement installer le paquetage unison-gtk (au lieu du paquetage unison).

Dernière modification par incises (Le 25/11/2009, à 18:46)

Hors ligne

#14 Le 25/11/2009, à 23:12

iri

Re : [Résolu] unison mountpoint et relative path

Bonsoir,

Si j'ai bien compris le fonctionnement de l'option 'mountpoint', un des objectifs est d'empêcher l'effacement des données "non-USB" si le disque USB venait à être indisponible au cours d'une synchronisation (débranchement intempestif / involontaire, panne d'alimentation, ...). Ne pas oublier qu'unison travaille dans les deux directions : s'il perçoit que les données USB n'existent plus au cours de la synchro, il va alors effacer les données sur le support non-USB. C'est ce que doit empêcher l'option 'mountpoint' correctement configurée.

C'est le "correctement configurée" qui nous intéresse ici :-)

Si le disque USB n'est pas présent lors de la demande de synchro, alors oui, il ne se passera rien.

Pour l'interface graphique, je ne peux pas te dire (la question ne m'était pas adressé non plus big_smile), je ne l'ai jamais utilisée. La saisie des quelques lignes des fichiers *.prf ne me sont pas insurmontables !

Hors ligne

#15 Le 27/11/2009, à 11:38

incises

Re : [Résolu] unison mountpoint et relative path

Oui, OK je n'avais pas bien compris le rôle de mountpoint. Tu as parfaitement raison...

Depuis des années je fais des sauvegardes ou des synchronisations sur des disques externes avec Unison, mais je l'avoue je n'avais jamais essayé d'utiliser mountpoint (il ne m'est jamais arrivé non plus d'arracher une clé en plein milieu d'une sauvegarde !). Sans être indispensable le moins du monde mountpoint permettrait donc de sécuriser un peu plus. Mais il est vrai que ce n'est pas très évident à configurer correctement, voici comment j'ai pu l'ajouter dans un de mes *.prf  (avec un chemin relatif par rapport à la seconde réplique) :


# Les deux répliques
  root = /
  root = /media/SauvDD/

mountpoint = ./

Et avec le *.prf pour la clé USB :

# Répertoires 'roots'
root = /home/toto/Documents/
root = /media/CLE_USB/Documents/

mountpoint = ../
iri a écrit :

Pour l'interface graphique, [...] je ne l'ai jamais utilisée. La saisie des quelques lignes des fichiers *.prf ne me sont pas insurmontables !

L'interface graphique ne dispense en rien de la confection d'un fichier *.prf.
Elle permet simplement de contrôler très aisément l'exécution de la sauvegarde ou de la synchronisation, beaucoup plus surement et agréablement que la version en ligne de commande.
Elle te permet de voir toutes les opérations déterminées par ton .prf avant que l'ensemble de la synchronisation n'ait lieu et de modifier éventuellement tout ce qui ne te convient pas, ce qui te donne une excellente maîtrise de la situation.

Je suis d'ailleurs franchement surpris que le paquet graphique unison-gtk ne soit pas la version par défaut sur Ubuntu.
A ce sujet la version de la doc officielle que j'ai sous la main dit ceci :

The textual interface is more convenient for running from scripts and works on dumb terminals; the graphical
interface is better for most interactive use.

autrement dit, sauf cas particulier (lancement d'Unison par l'entremise d'un script), l'interface graphique est recommandée... Essaye-la, tu ne le regretteras pas !
Peut-être bien que son utilisation aurait permis à Autiwa d'y voir plus clair et de ne pas abandonner la partie...

Dernière modification par incises (Le 27/11/2009, à 18:53)

Hors ligne

#16 Le 29/12/2009, à 20:45

Uboutentrain

Re : [Résolu] unison mountpoint et relative path

Bonjour Autiwa, j'ai eu le même problème et j'ai finalement trouvé la réponse

Il faut que mountpoint corresponde à chaque path indiqués, ou à la racine (ici "backup")

Il faut également avoir créé au préalable ce dossier "backup" sur la cible /media/stockage (donc /media/stockage/backup) et seulement celui-là


Voici ton profil adapté

# Roots of the synchronization
root = /media/documents
root = /media/stockage

#vérifie que le périphérique externe est bien monté pour éviter une synchronisation supprime tout parce que le dossier amovible est vide.
mountpoint = backup

# Names and paths to ignore:
ignore = Name *~
ignore = Name .*~

#Fichiers Produits par compilation LaTeX que l'on ignore
ignore = Name *.aux
ignore = Name *.ilg
ignore = Name *.lof
ignore = Name *.lot
ignore = Name *.out
ignore = Name *.toc
ignore = Name *.bbl
ignore = Name *.blg

# Options du journal
log = true
logfile = /home/autiwa/.unison/logunison

#synchro des dates
times = true

#pour forcer unison à garder la dernière version. Si on veut garder la plus vieille version, il faut utiliser l'option "older"
#force = newer

#demande une confirmation quand tout un dossier de synchronisation va être supprimé
confirmbigdeletes = true

#puis les sous répertoires
path=backup/clean
path=backup/Cours
path=backup/Documents_Officiels
path=backup/Downloads
path=backup/Journal
path=backup/site
path=backup/TeX
path=backup/vectoriel

Dernière modification par Uboutentrain (Le 05/01/2010, à 20:24)

Hors ligne

#17 Le 05/01/2010, à 20:46

Autiwa

Re : [Résolu] unison mountpoint et relative path

Voilà, j'ai mis en résolu vu qu'apparemment la solution donnée marche.

Je n'ai pas testé parce que depuis le temps, je me suis fait un script utilisant  rsync qui me permettait de faire plus ou moins ce que je voulais. Je ne compte pas repasser du temps à essayer de faire marcher unison. J'ai d'ailleurs abandonné l'un de mes PC et à la place, je me trimbale ma tour. Je garde un très mauvais souvenir d'unison, j'ai pas l'intention de re-tester à moins d'en avoir expressément besoin.


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#18 Le 16/01/2010, à 21:26

catindri

Re : [Résolu] unison mountpoint et relative path

Bonjour,

j'ai bien lu toutes vos remarques...j'avais le même pb, et les chemins relatifs semblent avoir résolu une partie de ceux ci.
Par contre je reste avec un certain nb de fichiers avec l'erreur suivante

"Error in copying locally: Système de fichiers accessible en lecture seulement"

alors que j'ai donné tous les droits, que l'option perms=0 est bien dnas le fichier de config..je ne sais plus que faire !!
merci
cat


catindri
Ubuntu 12.04 en passage vers 14.04

Hors ligne

#19 Le 17/01/2010, à 11:20

incises

Re : [Résolu] unison mountpoint et relative path

Tu lances Unison comme simple utilisateur ou sous root (après avoir fait un sudo su) ?

perms=0 évite simplement de copier les permissions vers un système de fichier du genre vfat chez qui la notion de permission n'existe pas.
Mais cela ne te donne pas de permission particulière d'écriture (si la cible se trouve à l'intérieur d'un répertoire pour lequel tu n'as pas de droit d'écriture tu seras bloqué tout de même).
Es-tu sûr que la cible se trouve dans des répertoires pour lesquels tu as les droits d'accès en écriture ?

Dernière modification par incises (Le 17/01/2010, à 11:27)

Hors ligne

#20 Le 22/01/2013, à 00:02

satan_petit_coeur

Re : [Résolu] unison mountpoint et relative path

Je déterre, mais c'est pour la bonne cause.

Après avoir passé du temps à comprendre pourquoi mon
mountpoint=../
ne marchait pas (il me disait que c'est interdit de faire référence au dossier parent), il en ressort que ce que mountpoint veut un fichier qui est présent sur les deux disques. Si unison ne trouve pas ce fichier sur l'un ou l'autre, il stoppe.

Donc il faut plutôt mettre quelque chose comme:
mountpoint=rep/fichier_lambda.txt

Je vais mettre à jour le wiki.

source

Hors ligne