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 05/02/2010, à 09:10

Smon

Créer un outil de synchronisation simple mais complet

Bonjour,

Je réfléchis actuellement à une solution de synchronisation automatique qui permettrait de synchroniser deux machines via un serveur.

Je pense me baser sur des logiciels existants.



Côté synchronisation, je me suis penché sur la solution Unison.

Avantages :
   * Fonctionne bien
   * Simple à configurer (simple edit d'un fichier texte)
   * Compatible Windows

Inconvénients :
  * Il faut installer Unison non seulement sur les ordinateurs Clients, mais aussi sur le serveur (or ça n'est pas toujours possible)
   * Il faut installer la même version d'Unison sur toutes les machines (au chiffre près).



Côté automatisation, je sais qu'il existe entre autre inotify et incrond, qui permettent de scanner les dossiers et de lancer des scripts en cas de modifications. De la surveillance quoi.

Comme inotify est déjà présent sur Ubuntu, il me semble que nous devrions retenir cette solution. Mais je n'y connais rien ...


Je recherche donc un développeur GTK et un "expert" inotify" qui seraient prêts à s'investir un peu dans le projet.



Ce qu'il faut faire :
   * Créer une interface en GTK qui permettra d'écrire dans de simples fichiers de configuration (au moins pour Unison, inotify je ne sais pas).
   * Nous expliquer comment configurer efficacement inotify.
   * Éventuellement trouver une solution alternative à Unison, qui permettrait de se passer de l'installation côté serveur.



Le recrutement commence ! smile

Dernière modification par Smon (Le 05/02/2010, à 15:07)

Hors ligne

#2 Le 05/02/2010, à 09:11

Smon

Re : Créer un outil de synchronisation simple mais complet

Bon, je vais commencer par réfléchir à l'interface graphique.

Hors ligne

#3 Le 05/02/2010, à 13:25

Smon

Re : Créer un outil de synchronisation simple mais complet

Alors, un premier mockup :

mockup1.png

[edit]
Et voici un mockup de création de tâche de synchronisation :

mockup2.png

Dernière modification par Smon (Le 05/02/2010, à 13:53)

Hors ligne

#4 Le 05/02/2010, à 13:37

bibleu

Re : Créer un outil de synchronisation simple mais complet

Salut,
Je suis super interessé par ton projet.
On peut recupéré les sources quelque part ?
tu utilises rsync derrière ?

Hors ligne

#5 Le 05/02/2010, à 13:51

Smon

Re : Créer un outil de synchronisation simple mais complet

Pour le moment il n'y a pas de sources, c'est juste un projet et toutes les idées, tous les conseils et toutes les bonnes volontés sont invitées à se prononcer sur ce qu'elle pensent être le mieux smile

Pour synchroniser j'utilise personnellement unison, mais il y a probablement mieux.

Tu utilises rsync toi ? C'est bien ? Ça fonctionne comment ?

Dernière modification par Smon (Le 05/02/2010, à 13:53)

Hors ligne

#6 Le 05/02/2010, à 14:31

bibleu

Re : Créer un outil de synchronisation simple mais complet

Oui j'utilise rzync mais que pour faire du backup, c'est super puissant surtout pour faire du backup sur internet avec un serveur en utilisant le protocole ssh, le problème c'est que c'est unidirectionelle.
Quelles seront les differences de ton futur logiciel avec Unison ?

Hors ligne

#7 Le 05/02/2010, à 15:06

Smon

Re : Créer un outil de synchronisation simple mais complet

En fait, ce futur logiciel se basera sur Unison (à moins qu'on ne trouve mieux).

Mais le problème d'Unison, c'est qu'il faut lancer les synchronisations manuellement. Or, j'aimerais que les synchronisations se fassent automatiquement, d'où l'utilisation d'inotify, qui peut surveiller un dossier et lancer un script si nécessaire.

En fait, l'application que je souhaite créer (ou plutot faire créer) se content d'éditer les fichiers de configuration d'Unison et d'inotify.

Qu'en penses-tu ?

Dernière modification par Smon (Le 05/02/2010, à 15:10)

Hors ligne

#8 Le 05/02/2010, à 15:09

Onclebenz

Re : Créer un outil de synchronisation simple mais complet

Smon, c'est impressionant se que tu as fais.

t'es developpeur?

Hors ligne

#9 Le 05/02/2010, à 15:11

Smon

Re : Créer un outil de synchronisation simple mais complet

En fait j'ai rien fait pour le moment, c'est juste des mockup tongue

Justement je cherche des devs qui seraient capables de me faire ça. Moi je suis dev PHP, le C et tout ça, j'y connais rien hmm

Dernière modification par Smon (Le 05/02/2010, à 15:12)

Hors ligne

#10 Le 05/02/2010, à 15:11

bibleu

Re : Créer un outil de synchronisation simple mais complet

Je ne connaît pas bien Unison, il me semble qu'il y a deja une interface graphique, je vais voir comment ca fonctionne.

Hors ligne

#11 Le 05/02/2010, à 15:12

Smon

Re : Créer un outil de synchronisation simple mais complet

Oui y'a une interface graphique, mais elle n'est pas complète et ne permet par l'automatisation ...

Hors ligne

#12 Le 05/02/2010, à 15:13

Kanor

Re : Créer un outil de synchronisation simple mais complet

Un projet assez proche de ton idée de la synchronisation
https://launchpad.net/timevault

Hors ligne

#13 Le 05/02/2010, à 15:15

Smon

Re : Créer un outil de synchronisation simple mais complet

C'est pas pour faire du backup timevault ?

Hors ligne

#14 Le 05/02/2010, à 15:20

Kanor

Re : Créer un outil de synchronisation simple mais complet

Backup et Synchronisation c'est plus ou moins la même chose
la synchronisation c'est seulement un backup qui est dynamique.

l'interet de timevault est de surveillé les fichier et des les sauvegarder les modif automatiquement donc dans le cas de la synchronisation ce n'est plus sauvegarder mais envoyé au site distant.(qui va quand même le sauvegarder))

Hors ligne

#15 Le 05/02/2010, à 15:20

Kanor

Re : Créer un outil de synchronisation simple mais complet

Backup et Synchronisation c'est plus ou moins la même chose
la synchronisation c'est seulement un backup qui est dynamique.

l'interet de timevault est de surveillé les fichier et des les sauvegarder les modif automatiquement donc dans le cas de la synchronisation ce n'est plus sauvegarder mais envoyé au site distant.(qui va quand même le sauvegarder))

Hors ligne

#16 Le 05/02/2010, à 15:24

TatrefThekiller

Re : Créer un outil de synchronisation simple mais complet

Question stupide : comment tu as fait tes mockups ?
C'est du Gimp, ou un programme pour réaliser des interfaces graphiques ?

Sinon, quitte à installer un logiciel client, pourquoi ne pas utiliser un truc genre SVN ? Tu pourrai faire une synchronisation automatique avec cron aussi.

Hors ligne

#17 Le 05/02/2010, à 16:11

Smon

Re : Créer un outil de synchronisation simple mais complet

J'ai utilisé Pencil pour faire le mockups, c'est un greffon Fx.

Sinon, je suis loin d'être un pro de la synchronisation. Mon problème, c'est que j'ai les idées mais pas la technique.
Si tu t'y connais bien, je suis tout ouïe et prêt à appliquer tout solution (tant est il quelle soit meilleure) que tu me proposeras smile

Pour TimeVault, j'ai un peu regardé mais je trouve ça trop compliqué ... En plus c'est juste du backup. Pour moi, le but est plus de synchroniser mes différents ordis que d'avoir une sauvegarde smile

Hors ligne

#18 Le 07/02/2010, à 05:39

AlexandreP

Re : Créer un outil de synchronisation simple mais complet

Tu cherches à faire quelque chose du même genre que le client Ubuntu One, mais avec des fonctionnalités étendues (ex : sélectionner plus d'un dossier à synchroniser, choix d'un serveur avec lequel synchroniser les dossiers, type de connexion distante, etc.) ?


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#19 Le 07/02/2010, à 10:27

Smon

Re : Créer un outil de synchronisation simple mais complet

Exactement smile

Le but est d'offrir une alternative à Ubuntu One, qui lui ne permet que de synchroniser avec les serveurs Canonical (j'aime pas ça) et qui n'est franchement pas au point tongue

Dernière modification par Smon (Le 07/02/2010, à 10:29)

Hors ligne

#20 Le 07/02/2010, à 10:49

AlexandreP

Re : Créer un outil de synchronisation simple mais complet

Dans ce cas, tu pourrais hacker autour de Ubuntu One, partir de ce qu'il est actuellement pour lui implanter les fonctionnalités qu'il te manque. (M'enfin, je dis ça... je veux dire, avec de l'aide de personnes qui s'y connaissent en programmation.)

bzr branch lp:ubuntuone-client

Dernière modification par AlexandreP (Le 07/02/2010, à 10:54)


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#21 Le 07/02/2010, à 19:48

Smon

Re : Créer un outil de synchronisation simple mais complet

Oui mais la question c'est : qu'est ce qu'ils utilisent en face ?

Hors ligne

#22 Le 07/02/2010, à 22:26

Ktamine

Re : Créer un outil de synchronisation simple mais complet

moi je flag car je réfléchis à ce sujet en ce moment.

J'en ai parlé avec des gens et il semblerait qu'il soit possible de faire un script bash qui tourne en fond et qui inspecte les fichiers dans les dossiers que tu veux sync. Quand un fichier est modifié le script lance unison avec le profil définit.

En fait unison fais la sync en fonction des heures de modification du fichier ou des droits donc il faudrait la syntaxe bash pour récupérer ces informations et en voiture simone.

Je ne connais pas encore bien le bash mais je vais me pencher sur ça très prochainement (quand j'aurais un peu plus de temps après mes projets que je dois rendre).

Après pour l'interface graphique je pense que zenity s'intégre bien au bash donc ça devrait pouvoir se faire comme ça.

Qu'en penses-tu?

(si j'ai marqué des bétises merci de me corriger j'aimerais pas passer pour un con tongue )

Hors ligne

#23 Le 07/02/2010, à 22:31

Ktamine

Re : Créer un outil de synchronisation simple mais complet

je viens de survoler ça http://julp.developpez.com/linux/inotify/

ça pourra peut-être mettre sur la piste qqu'un qui s'y connait bien

Hors ligne

#24 Le 07/02/2010, à 22:36

Smon

Re : Créer un outil de synchronisation simple mais complet

Ouais mais il y a un problème avec ça ... On ne peut pas surveiller les fichiers en ligne.

Par exemple, si je modifie un fichiers avec mon netbook, la synchronisation va se faire avec le serveur. Mais après, mon fixe il fait comment pour savoir qu'un fichier du serveur a changé et qu'il doit se mettre à jour ? hmm

Hors ligne

#25 Le 07/02/2010, à 22:45

Ktamine

Re : Créer un outil de synchronisation simple mais complet

ce qui se fait en local peut se faire à distance je pense avec ssh. C'est sécurisé si tu fais un contrôle toutes les 10 minutes, non?

Hors ligne