View previous topic :: View next topic |
Author |
Message |
jerep6 Apprentice
Joined: 02 Aug 2006 Posts: 215 Location: Landes
|
Posted: Thu Jul 02, 2009 12:14 pm Post subject: [Rsync] sur ssh [Résolu] |
|
|
Salut,
Je souhaite utiliser rsync avec ssh sauf que ça ne fonctionne pas :
Code: | $ rsync -av -e "ssh" Rs/ 192.168.1.10::Public
Enter passphrase for key '/home/jerep6/.ssh/id_dsa':
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [sender=3.0.5]
|
Voici la conf de rsync :
Code: | uid=nobody
gid=rsync
secrets file=/etc/rsyncd.secrets
strict modes=true
max connections=10
syslog facility=rsync
dont compress=*
[Public]
path = /mnt/P
comment = Tests de rsync public
read only = false |
Rsync et ssh fonctionne parfaitement indépendamment l'un de l'autre et quand j'utilise rsync sans module (utilisation de ":" au lui de "::") :
Code: | rsync -av -e "ssh" Rs/ 192.168.1.10:/mnt/P
Enter passphrase for key '/home/jerep6/.ssh/id_dsa':
sending incremental file list ...... |
Last edited by jerep6 on Fri Jul 03, 2009 1:13 pm; edited 1 time in total |
|
Back to top |
|
|
kernelsensei Bodhisattva
Joined: 22 Feb 2004 Posts: 5619 Location: Woustviller/Moselle/FRANCE (49.07°N;7.02°E)
|
Posted: Thu Jul 02, 2009 12:23 pm Post subject: |
|
|
salut,
personnellement je n'ai jamais utilisé cette syntaxe, j'ai toujours fait simplement :
Code: | rsync user@host:chemin1 chemin2 |
après ya bien sûr des options que tu peux rajouter pour ton transfert
EDIT : Ya peut-être un truc que j'ai mal compris... _________________ $ ruby -e'puts " .:@BFegiklnorst".unpack("x4ax7aaX6ax5aX15ax4aax6aaX7ax2aX5aX8 \
axaX3ax8aX4ax6aX3aX6ax3ax3aX9ax4ax2aX9axaX6ax3aX2ax4ax3aX4aXaX12ax10aaX7a").join' |
|
Back to top |
|
|
jerep6 Apprentice
Joined: 02 Aug 2006 Posts: 215 Location: Landes
|
Posted: Thu Jul 02, 2009 12:26 pm Post subject: |
|
|
Cette syntaxe fonctionne également chez moi, mais elle n'utilise pas les modules Rsync. Il faut spécifier le chemin entier. Dans mon cas /mnt/P au lui de Public |
|
Back to top |
|
|
sd44 Apprentice
Joined: 21 Jul 2007 Posts: 277 Location: Nantes 44
|
Posted: Thu Jul 02, 2009 10:54 pm Post subject: Re: [Rsync] sur ssh |
|
|
Quote: |
Code: | $ rsync -av -e "ssh" Rs/ 192.168.1.10::Public
Enter passphrase for key '/home/jerep6/.ssh/id_dsa':
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [sender=3.0.5]
|
|
j'utilise parfois ce genre de commande mais plutot comme ça :
Code: | rsync -izau -e "ssh" /sauvegarde/ pc1:/svg/ |
ou
Code: | rsync -izau -e "ssh" pc1:/svg/ /sauvegarde/ |
_________________ Pourquoi faire simple quand on peut faire compliqué ? |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Thu Jul 02, 2009 11:17 pm Post subject: |
|
|
Cela me semble un peu logique que, si tu spécifies SSH, tes extensions rsync ne fonctionnent plus car tu n'utilises plus le protocole rsync sur le réseau. Comme tu es en ssh, c'est SSH qui recherche le chemin ":Public" sur ton serveur.
Mais je me trompe peut-être. Comme beaucoup, je n'ai jamais utilisé ta façon de faire...
Pourtant, le post suivant (qui date un peu, certes) semble confirmer ceci : http://lists.samba.org/archive/rsync/2005-July/013069.html _________________ Mangez du poulet ! |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Fri Jul 03, 2009 1:18 am Post subject: |
|
|
PabOu wrote: | Cela me semble un peu logique que, si tu spécifies SSH, tes extensions rsync ne fonctionnent plus car tu n'utilises plus le protocole rsync sur le réseau. Comme tu es en ssh, c'est SSH qui recherche le chemin ":Public" sur ton serveur.
Mais je me trompe peut-être. Comme beaucoup, je n'ai jamais utilisé ta façon de faire...
Pourtant, le post suivant (qui date un peu, certes) semble confirmer ceci : http://lists.samba.org/archive/rsync/2005-July/013069.html |
C'est à peu près ça, quand on le fait par ssh, ça execute simplement un autre rsync sur l'hote distant, et les 2 causent par leur stdin/stdout par le canal ssh, et donc oui le protocole rsync n'a pas lieu dans ce cas là, surtout qu'il ne cause tout simplement pas au rsyncd de l'hote distant (alors que c'est lui qui a les liste des modules, etc.). (EDIT: en effet, ton lien confirme bien cela PabOu)
Si tu tiens à utiliser ces modules rsync tout en passant sur ssh, il va te falloir faire faire un peu plus compliqué, c'est à dire de faire un forward ssh vers le rsyncd de l'hote distant et ensuite lancer ton rsync vers localhost:ton_port_de_forward. Mais je ne suis pas sur que t'y gagnes des masses par rapport à simplement indiquer le path complet... |
|
Back to top |
|
|
scherz0 Apprentice
Joined: 02 Oct 2008 Posts: 154
|
Posted: Fri Jul 03, 2009 6:30 am Post subject: Re: [Rsync] sur ssh |
|
|
jerep6 wrote: | Voici la conf de rsync : |
Le fichier que tu mentionnes est-il /etc/rsyncd.conf ? Dans ce mode d'utilisation, le serveur qui est lancé (à chaque connexion) cherche son fichier de conf dans le homedir de l'utilisateur, et non pas dans /etc/. Essaie avec le fichier rsyncd.conf suivant dans ton homedir :
Code: |
use chroot = no
dont compress = *
syslog facility = rsync
[Public]
path = /mnt/P
comment = Tests de rsync public
read only = false
|
Les autres options qui apparaissent dans le fichier de conf que tu as donné n'ont pas de sens dans ce contexte. |
|
Back to top |
|
|
jerep6 Apprentice
Joined: 02 Aug 2006 Posts: 215 Location: Landes
|
Posted: Fri Jul 03, 2009 1:13 pm Post subject: |
|
|
J'ai bien compris vos explications. Je vais donc faire sans module.
@scherz0 : j'ai testé ce que tu dis. J'ai donc créer le fichier rsyncd.conf dans mon répertoire personnel et ça fonctionne. En revanche, j'ai l'impression que rsync s'exécute alors avec les droits de l'utilisateur ssh car je n'ai pas le droit de chrooter, et les options uid, gid des modules de fonctionnent pas. Le gid et le uid des fichiers sont ceux de l'utilisateur ssh.
Merci à tous de votre aide. |
|
Back to top |
|
|
scherz0 Apprentice
Joined: 02 Oct 2008 Posts: 154
|
Posted: Fri Jul 03, 2009 1:33 pm Post subject: |
|
|
jerep6 wrote: | @scherz0 : j'ai testé ce que tu dis. J'ai donc créer le fichier rsyncd.conf dans mon répertoire personnel et ça fonctionne. En revanche, j'ai l'impression que rsync s'exécute alors avec les droits de l'utilisateur ssh car je n'ai pas le droit de chrooter, et les options uid, gid des modules de fonctionnent pas. Le gid et le uid des fichiers sont ceux de l'utilisateur ssh. |
Ça établit une connexion via ssh et lance un serveur rsync "one shot", et évidement ce serveur a le même uid que le shell. Pas de chroot non plus, bien sûr.
Tout est écrit dans le man, section "USING RSYNC-DAEMON FEATURES VIA A REMOTE-SHELL CONNECTION" |
|
Back to top |
|
|
jerep6 Apprentice
Joined: 02 Aug 2006 Posts: 215 Location: Landes
|
Posted: Fri Jul 03, 2009 1:48 pm Post subject: |
|
|
Honte à moi, je regardais les exemples de la section "UTILISER LES FONCTIONNALITÉS D'UN DÉMON RSYNC VIA UNE CONNEXION SHELL DISTANTE", mais je n'ai pas lu le préambule qui explique clairement la situation.
Merci encore. |
|
Back to top |
|
|
|