Sempre que você executa eval $(ssh-agent) && ssh-add
, um novo agente é iniciado, então você precisa se autenticar novamente.
Acho que a melhor maneira é armazenar os dados do agente SSH permanentemente por sessão (no seu ~/.profile
):
export SSHPROC=${HOME}/.ssh/cur-proc.${HOSTNAME}
restart_ssh_agent(){
. ${SSHPROC}
kill ${SSH_AGENT_PID}
/bin/rm -rf ${SSHPROC} ${SSH_AUTH_SOCK} /tmp/ssh-*
ssh-agent > ${SSHPROC}
cat ${SSHPROC}
. ${SSHPROC}
ssh-add
}
e adicione . ${SSHPROC}
ao seu .bashrc
.
Em seguida, você chama restart_ssh_agent
uma vez (ou quando ele morre por algum motivo) e, em seguida, mantém suas credenciais com o agente.