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 27/11/2012, à 08:50

flyingman

Rsync sur réseau et mot de passe en batch?

Bonjour à tous.

Comment faire "passer" un mot de passe quand on utilise rsync dans un crontab par exemple?

D'avance merci.

Hors ligne

#2 Le 27/11/2012, à 10:17

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

Salut,

Tu pourrais faire ça avec expect.

Mais il y a bien mieux pour ça. Si rsync utilise ssh, alors tu peux utiliser une authentification par clé, en créant une clé avec une phrase de passe vide.

Hors ligne

#3 Le 27/11/2012, à 17:52

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Tu pourrais faire ça avec expect.

OK je vais essayer ça!

Hors ligne

#4 Le 27/11/2012, à 18:00

Hoper

Re : Rsync sur réseau et mot de passe en batch?

Une authentification par clef serait beaucoup plus simple à mettre en place (et plus sécurisée aussi).


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#5 Le 27/11/2012, à 18:18

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

Hoper a écrit :

beaucoup plus simple [...] plus sécurisée aussi

C'est en effet ce que je voulais dire quand j'ai écrit "bien mieux" smile

Hors ligne

#6 Le 28/11/2012, à 11:05

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Une authentification par clef serait beaucoup plus simple à mettre en place (et plus sécurisée aussi).

Il y a une chose que je n'ai pas comprise avec rsync en effet, avant je l'exécutais sous un user (celui de l'install de ubuntu) et cela ne me posait aucun problème avec le crontab!

Mais par la suite, cela ne fonctionnait plus avec "root" qui m'était imposé (pour conserver le users durant la synchronisation ).
Ais-je fait une mauvaise manip?

Cordialement.

Hors ligne

#7 Le 28/11/2012, à 11:07

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

cela ne fonctionnait plus

Tu fais quoi ? Tu obtiens quelle erreur ? Dans quel contexte ? Qui comment quoi où ?

Je pense que si je vais voir Darty et que je leur dis "mon lave-linge qui est dans ma salle de bain marche plus" ils pourront pas m'aider des masses smile

Hors ligne

#8 Le 28/11/2012, à 11:23

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Tu fais quoi ? Tu obtiens quelle erreur ? Dans quel contexte ? Qui comment quoi où ?

Je vais relancer rsync (avec le cron) ce midi et j'essaierais de t'en dire plus.

Cordialement.

Hors ligne

#9 Le 28/11/2012, à 15:23

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Bonjour à tous.
Voici ce qui est sortie sur mon fichier log:

2012/11/28 12:30:01 [30876] rsync: connection unexpectedly closed (0 bytes received so far) [sender]
2012/11/28 12:30:01 [30876] rsync error: unexplained error (code 255) at io.c(605) [sender=3.0.9]

Pour rappel:
la commande rsync est lancer par cron (sudo crontab -e):

30 12 * * 1-6 rsync -azq --log-file=/mnt/rsyncserv.log --exclude=/mnt/rsyncserv.log  /mnt/ 192.168.0.101:/mnt/

Cordialement.

Hors ligne

#10 Le 28/11/2012, à 15:24

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

et quand tu lances cette commande à la main tu n'as pas de problème ? que se passe-t-il dans ce cas ?

Hors ligne

#11 Le 28/11/2012, à 16:12

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Et bien non, si ce n'est qu'il me demande (en interactif) le MDP de sudo et aussi celui de root pour se connecter sur la machine distante.

Hors ligne

#12 Le 28/11/2012, à 16:15

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

Ben voilà pourquoi.

Ton cron il faut le faire s'exécuter par le compte root, et il faut faire une authentification par clé entre le compte root local et le serveur distant...

Hors ligne

#13 Le 28/11/2012, à 16:19

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Ton cron il faut le faire s'exécuter par le compte root

Si je fait sudo crontab -e, c'est bien le cron du root, non?

Hors ligne

#14 Le 28/11/2012, à 16:27

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

flyingman a écrit :

Si je fait sudo crontab -e, c'est bien le cron du root, non?

Oui.

Cela étant dit, je n'aime pas les "crontab -e" car c'est moins rapidement visible, tes cron sont éparpillés parmi les utilisateurs, etc.

ajouter un fichier dans /etc/cron.d est tellement plus joli smile

Hors ligne

#15 Le 28/11/2012, à 16:32

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Ok tiramiseb je dois partir du boulot.
Je vais jeter  un coup d'oeil à tête reposé ce soir et essayer de copmrendre d'ou vient le problème.

Bonne soirée.

Hors ligne

#16 Le 28/11/2012, à 16:33

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

essayer de copmrendre d'ou vient le problème.

Il vient du fait que rsync demande le mot de passe et dans un cron y'a personne pour entrer le mot de passe.
Il faut une authentification par clé.

Hors ligne

#17 Le 28/11/2012, à 17:26

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Bon comme cela me prenait la tête, j'ai pensé à quelque chose d'un peu fou! tongue

Puisse que le problème vient de l'interaction de sudo, pourquoi ne pas, tout bonnement, SUPPRIMER SUDO?
Voilà ce que j'ai trouver:
http://forum.ubuntu-fr.org/viewtopic.php?id=153532

Vais-je aux devants de gros ennuis si je fais cela?

Cordialement.

Hors ligne

#18 Le 28/11/2012, à 17:34

Hoper

Re : Rsync sur réseau et mot de passe en batch?

Si je fait sudo crontab -e, c'est bien le cron du root, non?

Moi je pense que non.
sudo indique que tu lance la commande avec les droits root, mais dans dans l’environnement de root (donc avec son home etc /root/.ssh etc).

Essaye par exemple la commande suivante :

sudo echo ~

Tu verra que c'est le home de ton utilisateur qui sera affiché, pas celui de root. Bref, si tu veux éditer la crontab de root, commence par devenir vraiment root avec, par exemple :

sudo su -


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#19 Le 28/11/2012, à 18:22

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

Hoper a écrit :

Si je fait sudo crontab -e, c'est bien le cron du root, non?

Moi je pense que non.

sebastien@cao:~$ sudo crontab -l
no crontab for root

CQFD.

En effet l'environnement est celui de l'utilisateur, mais cron ne se base pas là-dessus.

Hors ligne

#20 Le 28/11/2012, à 18:24

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

flyingman a écrit :

[...]
Puisse que le problème vient de l'interaction de sudo
[...]

Je ne sais pas quoi dire de plus que ce que j'ai déjà dit.
Je ne sais pas comment le dire plus clairement.

Je vais le redire...

Le problème vient du fait que rsync demande le mot de passe de l'hôte distant et avec cron y'a personne pour entrer le mot de passe ; il faut une authentification par clé.
Le problème ne vient pas de sudo. Une fois que ta commande est dans la crontab de root, alors sudo on s'en fout.

Dernière modification par tiramiseb (Le 28/11/2012, à 18:25)

Hors ligne

#21 Le 28/11/2012, à 19:12

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Le problème vient du fait que rsync demande le mot de passe de l'hôte distant

Pardon tiramiseb, je n'avait pas compris cela, je croyais que tu parler du MDP du sudo!

Qu'y-a t'il de plus simple à mettre en place pour un débutant comme moi?
expect ou bien ce systeme d'identification par clé?

Cordialement.

Hors ligne

#22 Le 28/11/2012, à 19:31

tiramiseb

Re : Rsync sur réseau et mot de passe en batch?

l'authentification par clé est de loin la plus simple à mettre en oeuvre
http://doc.ubuntu-fr.org/ssh#authentifi … iqueprivee

Hors ligne

#23 Le 28/11/2012, à 19:38

flyingman

Re : Rsync sur réseau et mot de passe en batch?

Merci tiramiseb, et merci Hoper.
J'ai de la lecture pour ce soir! wink

Ce post à le mérite d'avoir bien clarifier le fonctionnement de cron et sudo!

Cordialement.

Hors ligne