IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Configuration de rsync


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut Configuration de rsync
    Jusqu'à maintenant, j'utilise rsync comme suit :

    A - Sous Ubuntu (Synchronisation avec un serveur distant debian)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsync -e ssh -ova root@serveurdistant:/source/* /cible/
    B - Sous windows (Synchronisation locale)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsync -e ssh -av --size-only --chmod=ugo=rwX "/cygdrive/source/" "/cygdrive/cible/"
    Je n'ai modifié, sur aucune machine, le fichier rsyncd.conf ni la propriété daemon.
    Pourtant, tout marche.

    Maitenant que j'essaie d'améliorer mes synchronisations, je suis confronté à deux problèmes :

    a) Si j'utilise --password-file dans ma synchro A (lancée sous linux), j'ai une erreur m'indiquant que cette option n'est possible que pour accéder à un daemon.

    b) Si, dans ma synchronisation B (lancée sous windows), je choisis comme cible root@serveurdistant:/cible je récolte un "Could not create directory /home/user/.ssh".

    J'ai consulté depuis plusieurs jours de nombreux tutos de qualité, j'ai tenté de les comprendre et d'en tenir compte, mais je passe certainement à côté de quelque chose.

    Je me demande même maintenant comment ma synchonisation A peut marcher alors que je n'ai rien paramétré.
    - est-ce le fait d'utiliser root ?
    - pourquoi le fait d'utiliser "--password-file" me dit qu'il ne s'agit pas d'un daemon alors que j'y accède sans problème sans cette option ?

    Merci pour toute aide, et d'avoir pris le temps de me lire.

    Phil

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    rsync utilise soit la connection ssh, soit se connecte à un daemon rsyncd sur la machine destination.

    Comme vous spécifiez "-e ssh", l'option password-file n'a pas d'usage d'où le message d'erreur.

    Vous pouvez modifier rsyncd.conf : tant que le daemon rsyncd n'est pas lancé sur la machine destination çà ne changera strictement rien, puisque que lui seul en tient compte.
    Et comme vous n'en avez pas besoin de rsyncd sur la machine pour faire "rsync -e ssh"… çà fonctionne comme vous l'avez constaté.


    Et votre problème sous Windows doit venir que rsync ne peut créer sur le volume assigné à Cygwin le dossier en question.
    (Vous êtes root sur le serveur distant, pas sur la machine locale…)

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Extrait de man "rsync" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
           --password-file
                  Cette  option vous permet de fournir un mot de passe dans un
                  fichier pour accéder à un démon rsync distant. Notez que cette
                  option est utile uniquement pour accéder à un démon rsync en 
                  utilisant le transport interne, pas lors de l'utilisation d'un shell 
                  distant comme transport. Le fichier ne doit pas être  lisible par 
                  tout le monde. Il doit contenir juste le mot de passe sur une ligne 
                  seule.

  4. #4
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Merci pour vos réponses.

    Donc, si je comprends bien :

    a) un appel rsync à travers une connection ssh ne fait pas appel à un daemon rsync et ne nécessite donc pas que ce daemon soit activé sur le serveur distant.

    Mais alors, comment rsync est il lancé ?

    b) le paramétrage dans rsyncd.conf ne sert qu'en cas d'appel interne au daemon rsync et n'est pas utilisé en cas d'appel via ssh.

    c) Dans le cas d'un appel rsync en ssh de windows vers un serveur distant, rsync a besoin d'accéder au repertoire /home/user/.ssh

    - pourquoi cela n'est-il pas le cas si je remplace la cible distante par une cible locale ?
    - rsync cherche-t-il le répertoire /home/user/.ssh sur le poste appelant ? (à noter que le nom d'user qui apparaît dans le message d'erreur est celui de l'utilisateur windows, donc de l'utilisateur appelant)
    - si oui, où créer ce répertoire ? J'ai l'impression que cygdrive pointe sur la racine car c:\ est pointé par /cygdrive/c. Comment créer sous windows /home/user/.ssh ?

    Merci encore,

    Phil

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Citation Envoyé par Pgs Voir le message
    a) un appel rsync à travers une connection ssh ne fait pas appel à un daemon rsync et ne nécessite donc pas que ce daemon soit activé sur le serveur distant.
    Tout a fait.

    Mais alors, comment rsync est il lancé ?
    En tant que commande tout simplement.

    b) le paramétrage dans rsyncd.conf ne sert qu'en cas d'appel interne au daemon rsync et n'est pas utilisé en cas d'appel via ssh.
    Le paramétrage ne sert que si tu as l'intention d'utiliser un serveur "rsync".

    c) Dans le cas d'un appel rsync en ssh de windows vers un serveur distant, rsync a besoin d'accéder au repertoire /home/user/.ssh
    Non, ce n'est pas "rsync", mais "ssh" qui en a besoin.

    - pourquoi cela n'est-il pas le cas si je remplace la cible distante par une cible locale ?
    Parce que localement "rsync" se comporte comme la commande "cp" en opposition à "scp" et n'a pas besoin d'authentification.

    - rsync cherche-t-il le répertoire /home/user/.ssh sur le poste appelant ? (à noter que le nom d'user qui apparaît dans le message d'erreur est celui de l'utilisateur windows, donc de l'utilisateur appelant)
    - si oui, où créer ce répertoire ? J'ai l'impression que cygdrive pointe sur la racine car c:\ est pointé par /cygdrive/c. Comment créer sous windows /home/user/.ssh ?
    Non, "rsync" ne recherche pas le ".ssh" ça c'est l'affaire de "ssh". Par contre la recherche s'effectue sur le serveur.

  6. #6
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Merci pour tes réponses claires.

    Mais je ne comprends pas ça :
    - mon user local (windows) est A
    - mon user distant (debian) est B
    - le message d'erreur émis par ssh lancé sur le poste local (windows) est :

    Could not create directory /home/A/.ssh

    A est mon user local, pas distant. Pourquoi le chercherait-il sur le serveur distant ? C'est pas logique, non ?

    D'ailleurs, pourquoi n'ai je pas ce problème lorsque je fais le même appel ssh vers debian à partir d'un poste local Linux ?

    Merci encore

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Quelle commande tapes-tu exactement ?

    A partir du moment où tu utilises "ssh" il faut que ton USER possède un compte sur le serveur ou spécifier un utilisateur existant...

  8. #8
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    ssh a besoin de la clé publique du client, et si elle n'est pas spécifiée par l'option -i alors il cherche les endroits par défaut dont le /home/client_user/.ssh/, et s'il ne trouve pas de clés publiques alors il tentera une connection par challenge.
    (jouer avec les options -v et -vv de ssh - en dehors de rsync - pour voir ce qu'il fait…)
    Si vous ne voulez pas créer de /home/client_user dans l'environnement cygwin, mettez la clé publique à utiliser dans un endroit dont vous passerez le path à l'option -i de ssh (attention aux guillemets rsync a aussi une option -i qui n'a rien à voir…).

    par contre le daemon sshd auquel ssh se connecte sur la machine distante, lui, cherchera les clés privées sur le serveur aux endroits spécifiés dans son fichier de configuration, dont normalement le /home/server_user/.ssh.

  9. #9
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    En fouinant sur le Net, j'ai vu que peut être l'installation du paquet "cygwin ssh extra utils" serait utile...

    A explorer après la réponse de "JeitEmgie"

Discussions similaires

  1. Rsync, Configuration particuliere avec tomcat ?
    Par Ze MiW dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 07/12/2007, 16h18
  2. Réponses: 16
    Dernier message: 30/07/2007, 14h36
  3. [configuration] lancer plusieurs serveurs Tomcat
    Par polo54 dans le forum JBuilder
    Réponses: 4
    Dernier message: 13/06/2003, 15h52
  4. Configurer OpenGL/Glut avec C++Bluider
    Par MiGoN dans le forum OpenGL
    Réponses: 2
    Dernier message: 13/09/2002, 23h18
  5. BDE : Configurer automatiquement le NETDIR
    Par Harry dans le forum Paradox
    Réponses: 10
    Dernier message: 29/07/2002, 11h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo