voila je veux lancer un tache tous les vendredi pour externaliser ma base de bonne glpi sur un autre serveur pour ceci j'utilise un script qui sauvegarde la base en .gz puis envoi ce .gz sur l'autre serveur a l'aide de la commande scp je n'est pas d'identification grace a une clé partagé.
tout fonctionne bien quand je lande le scripts a la main mais quand c'est avec le cron la sauvegarde ce fait bien mais pas le transfert sur l'autre serveur.sa fait 3 jours que je galère.
merci d'avance
# Identification par clé
Posté par Ellendhel (site web personnel) . Évalué à 1.
As-tu quelque chose de ce genre dans la procédure que tu utilises actuellement ?
Sinon, il faut se baser sur quelque chose de ce genre :
#!/bin/bash
# Transfert du fichier de sauvegarde vers
# une autre machine
AGENT_INFO=~/.agent-info; export AGENT_INFO
if [ -f "$AGENT_INFO" ]
then
. $AGENT_INFO
else
exit 1
fi
scp ~/fichier.tar.gz serveur.net:
Là où le bat blesse c'est qu'il faut lancer ssh-agent et il faut le faire de manière manuelle, une fois, généralement après le boot de la machine :
ssh-agent | head -2 > ~/.agent-info
source ~/.agent-info
ssh-add
C'est avec la commande 'ssh-add' que le mot de passe de la clé sera demandé, après la clé sera conservée en mémoire par ssh-agent et les transferts pourront passer.
[^] # Re: Identification par clé
Posté par Gyro Gearllose . Évalué à 1.
Il "suffirait" probablement que l'environnement de l'utilisateur soit appelé avant le lancement de la commande scp...
Autrement dit, dans le script qui lance le scp, que ce soit un shell ou un script, peu importe, remplacer :
scp plop.tgz user@serveur:
par :
su - user "scp plop.tgz user@serveur:"
Normalement, ça devrait fonctionner, car le '-' encadré de deux espaces dans la commande su indique justement de charger l'environnement. L'appel à scp est entre quotes pour que la commande su ne l'interprète que comme un seul paramètre.
Enfin, je trouve ça plus simple que de s'encombrer d'un ssh agent, etc...
Voilà, en espérant que je ne me suis pas trompé (je n'ai pas testé par manque de temps), et que ce sera utile.
[^] # Re: Identification par clé
Posté par Gyro Gearllose . Évalué à 1.
Précéder l'appel à scp de . ~/.bash_profile ou équivalent....
Du coup, la ligne deviendrait :
. ~/.bash_profile && scp plop.tgz user@serveur:
Quand même plus propre, non ?
[^] # Re: Identification par clé
Posté par sylvain cresto (site web personnel) . Évalué à 3.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.