Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Outil de synchronisation utilisant SSH

11 réponses
Avatar
mazert
Bonjour,

Je cherche depuis un moment un outils similaire à owncloud mais
utilisant le protocole SSH pour fonctionner et qui ne nécessite pas
d'installer quoi que ce soit sur la machine serveur (qui ne dispose que
d'un serveur ssh).

J'ai découvert unison qui semble presque interessant, mais seulement il
ne gère pas la synchronisation automatique (on doit indiquer
manuellement le fait que l'on souhaite synchroniser) et il faut
qu'unison soit aussi present sur le serveur distant.

Donc est-ce que quelqu'un pourrait m'indiquer un ou des outils qui
répondraient à ces critères ?

Merci d'avance

10 réponses

1 2
Avatar
Kevin Denis
Le 19-09-2014, mazert a écrit :
Je cherche depuis un moment un outils similaire à owncloud mais
utilisant le protocole SSH pour fonctionner et qui ne nécessite pas
d'installer quoi que ce soit sur la machine serveur (qui ne dispose que
d'un serveur ssh).

Donc est-ce que quelqu'un pourrait m'indiquer un ou des outils qui
répondraient à ces critères ?



rsync permet de synchroniser des dossiers.
rsync peut s'appuyer sur ssh pour synchroniser un dossier local avec
un dossier disant.
--
Kevin
Avatar
mazert
Le 19/09/2014 12:44, Kevin Denis a écrit :
rsync permet de synchroniser des dossiers.
rsync peut s'appuyer sur ssh pour synchroniser un dossier local avec
un dossier disant.




Oui, hélas rsync présente le même problème qu'unison : il faut qu'il
soit également installé sur la machine distante.

Je pensais à un outils permettant d'utiliser la commande scp pour le
transfert de fichier, chercherait les fichier à mettre à jour avec ssh
selon les dossier qu'on lui a indiqué, et gérerait de manière
automatique les synchronisations.
Avatar
Kevin Denis
Le 19-09-2014, mazert a écrit :
rsync permet de synchroniser des dossiers.
rsync peut s'appuyer sur ssh pour synchroniser un dossier local avec
un dossier disant.



Oui, hélas rsync présente le même problème qu'unison : il faut qu'il
soit également installé sur la machine distante.



De mémoire, ce n'est pas une obligation. Tu peux utiliser le serveur
rsyncd, ou utiliser rsync qui utilise ssh pour consulter les fichiers
distants sans utiliser de démon rsync côté distant.

Je pensais à un outils permettant d'utiliser la commande scp pour le
transfert de fichier, chercherait les fichier à mettre à jour avec ssh
selon les dossier qu'on lui a indiqué, et gérerait de manière
automatique les synchronisations.



Sinon, tu montes le dossier distant avec sshfs, et tu utilises l'outil
local de ton choix.
--
Kevin
Avatar
Kevin Denis
Le 19-09-2014, mazert a écrit :
rsync permet de synchroniser des dossiers.
rsync peut s'appuyer sur ssh pour synchroniser un dossier local avec
un dossier disant.



Oui, hélas rsync présente le même problème qu'unison : il faut qu'il
soit également installé sur la machine distante.



De mémoire, ce n'est pas une obligation. Tu peux utiliser le serveur
rsyncd, ou utiliser rsync qui s'appuye sur ssh pour consulter les fichiers
distants sans lancer de démon rsync côté distant.

Je pensais à un outils permettant d'utiliser la commande scp pour le
transfert de fichier, chercherait les fichier à mettre à jour avec ssh
selon les dossier qu'on lui a indiqué, et gérerait de manière
automatique les synchronisations.



Sinon, tu montes le dossier distant avec sshfs, et tu utilises l'outil
local de ton choix.
--
Kevin
Avatar
Nicolas George
Kevin Denis , dans le message
, a écrit :
ou utiliser rsync qui s'appuye sur ssh pour consulter les fichiers
distants sans lancer de démon rsync côté distant.



rsync n'est pas magique : il utilise SSH pour établir une connexion
sécurisée et authentifiée, mais il faut bien un programme à l'autre bout de
la connexion pour examiner les fichiers déjà présents et les comparer aux
fichiers locaux pour savoir les quels transférer. Ce programme, c'est rsync
aussi.

Le meilleur espoir si on ne veut pas compter sur rsync sur le serveur (mais
on se demande bien pourquoi : rsync, c'est la base), c'est de compter sur un
langage de programmation interprété présent sur le serveur (perl et python
étant les deux candidats évidents) et d'envoyer par ssh une implémentation
dans ce langage de rsync ou d'un protocole similaire à rsync plus simple.

C'est du boulot à mettre en place pour un résultat inefficace et
fondamentalement inutile.
Avatar
Francois Lafont
Le 19/09/2014 16:00, Nicolas George a écrit :

Le meilleur espoir si on ne veut pas compter sur rsync sur le serveur (mais
on se demande bien pourquoi : rsync, c'est la base)



Je suis d'accord. Faire du rsync sans rsync, c'est un péché. :)


--
François Lafont
Avatar
Tonton Th
On 2014-09-19, Kevin Denis wrote:

Sinon, tu montes le dossier distant avec sshfs, et tu utilises l'outil
local de ton choix.



Une ssolution digne et élégante. /me fan de sshfs...

--
_/°< coin http://weblog.mixart-myrys.org/?post/2014/09/Radio-Myrys
Avatar
mazert
Le 19/09/2014 16:00, Nicolas George a écrit :
rsync n'est pas magique : il utilise SSH pour établir une connexion
sécurisée et authentifiée, mais il faut bien un programme à l'autre bout de
la connexion pour examiner les fichiers déjà présents et les comparer aux
fichiers locaux pour savoir les quels transférer. Ce programme, c'est rsync
aussi.

Le meilleur espoir si on ne veut pas compter sur rsync sur le serveur (mais
on se demande bien pourquoi : rsync, c'est la base), c'est de compter sur un
langage de programmation interprété présent sur le serveur (perl et python
étant les deux candidats évidents) et d'envoyer par ssh une implémentation
dans ce langage de rsync ou d'un protocole similaire à rsync plus simple.



En fait il s'agit d'une machine sous busybox qui ne possède qu'un
serveur ssh, voila pourquoi c'est si limité, et on ne peux rien mettre
d'autre car système fermé.

Pourquoi forcement avoir un programme spécifique sur la machine distante
? Rien ne m'empêche de tester l'existence d'un fichier/dossier avec ssh
par exemple :
http://xmodulo.com/2013/05/how-to-check-if-file-exists-on-remote-server.html
On pourrait après très bien imaginer un mécanisme de synchronisation a
partir de là...


On 2014-09-19, Kevin Denis wrote:

Sinon, tu montes le dossier distant avec sshfs, et tu utilises l'outil
local de ton choix.



Intéressant, ça serait une solution envisageable dans ce cas, je vais
aller tester celà.
Avatar
Nicolas George
mazert , dans le message <lvhfkl$ln2$, a écrit :
En fait il s'agit d'une machine sous busybox qui ne possède qu'un
serveur ssh, voila pourquoi c'est si limité, et on ne peux rien mettre
d'autre car système fermé.



Dans ce cas, la bonne réponse c'est le boycott. À la rigueur installer rsync
dans le home.

Pourquoi forcement avoir un programme spécifique sur la machine distante
? Rien ne m'empêche de tester l'existence d'un fichier/dossier avec ssh
par exemple :
http://xmodulo.com/2013/05/how-to-check-if-file-exists-on-remote-server.html
On pourrait après très bien imaginer un mécanisme de synchronisation a
partir de là...



Oui, on peut, c'est ce dont j'ai parlé dans le reste de mon message. Mais
pour une synchronisation robuste, il faut largement plus que tester
l'existence d'un fichier, donc il faut transférer largement plus qu'un petit
bout de shell.
Avatar
Nicolas George
Tonton Th , dans le message
, a écrit :
Sinon, tu montes le dossier distant avec sshfs, et tu utilises l'outil
local de ton choix.


Une ssolution digne et élégante. /me fan de sshfs...



Sauf qu'elle ne marche pas, cette solution.

Tu auras le mode de base de rsync qui marchera peut-être, en utilisant
uniquement les timestamps et la taille du fichier, mais ce qui fait
l'intérêt de rsync ne fonctionne que si tu as l'intelligence de rsync de
part et d'autre du goulot d'étranglement.
1 2