Eu tenho um site como um repositório Git remoto, retirando do Bitbucket.com usando um alias SSH. Posso iniciar manualmente o ssh-agent no meu servidor, mas preciso fazer isso toda vez que faço login via SSH.
Inicio manualmente o ssh-agent:
eval ssh-agent $SHELL
Então eu adiciono o agente:
ssh-add ~/.ssh/bitbucket_id
Então ele aparece quando eu faço:
ssh-add -l
E eu estou pronto para ir. Existe alguma maneira de automatizar esse processo para que eu não precise fazer isso toda vez que fizer login? O servidor está executando o RedHat 6.2 (Santiago).
ssh-agent <command>é executado <command>como um subprocesso de ssh-agent, então você está iniciando um novo shell. Eu acho que você quer eval ssh-agent.
.bash_profileé específico para bash, .profileé genérico para todos os shells POSIX. bashprocurará primeiro e .bash_profile, em seguida, usará como padrão .profile.
ssh-agentum shell "padrão" (compatível com POSIX) é eval $(ssh-agent -s). Observe também que você deve se livrar adequadamente do agente ao fazer logout, por isso também é aconselhável inserir trap 'kill $SSH_AGENT_PID' EXITsua .profileapós a linha que inicia o agente.