Quand j'écris .bashrc script pour tenir passphrase pubkey, le plus important commandement est:Pourquoi nohup n'a pas réussi à maintenir le processus ssh-agent hors de la session?
eval `ssh-agent -s`
Le problème est, si les sorties de session, ssh-agent sera automatiquement fermé qui conduit à la nécessité de passphrase entrée encore à la prochaine session. Ce que je veux, c'est définir une phrase secrète seulement une fois jusqu'à ce que le système redémarre. Par conséquent, je tente:
eval `nohup ssh-agent -s`
ssh-agent Hope peut vivre de la session à partir comme les autres processus de longue. Cependant, cela ne fonctionne PAS ... Pourquoi? Et comment atteindre mon objectif?
Merci d'avance.
Pour votre information, le script entier est:
ssh-reagent() {
for agent in $TMPDIR/ssh-*/agent.*; do
export SSH_AUTH_SOCK=$agent
if ssh-add -l &> /dev/null; then
echo "Found working SSH Agent:"
ssh-add -l
return
else
rm -rf $(dirname ${SSH_AUTH_SOCK})
export SSH_AUTH_SOCK=
fi
done
eval `ssh-agent -s` # <-- How to keep ssh-agent alive when logout?
ssh-add ~/.ssh/id_rsa
}
ssh-reagent
Désolé pour la confusion. En fait, mon code provient du script de ré-agent. Laissez-moi montrer le tout dans mon message. – ShenLei
Désolé, mais le script que vous avez ajouté à la question est _not_ le script ssh-reagent, c'est une version modifiée. L'original vient sans l'appel de 'ssh-agent', où vous présentez le problème. Ma réponse s'applique toujours, je dirais. Tout comme la documentation l'explique: l'agent ssh devrait déjà exister, seulement alors vous pouvez vous y attacher à nouveau. Renouveler une nouvelle à chaque fois n'a tout simplement aucun sens. – arkascha
Oh, je vois la différence. Je devrais mettre la ligne ssh-agent dans ~/.bash_profile et mettre ssh-reagent dans ~/.bashrc. Ai-je raison? – ShenLei