Parece que o seu problema é que você está iniciando uma nova invocação do agente em cada inicialização do shell (provavelmente em .bash_profile
ou .bashrc
). Isso não é necessário, portanto, você deve encontrar essas chamadas do agente ssh e removê-las.
No OSX, geralmente há um agente ssh iniciado no momento da inicialização para a sua sessão de desktop. Por exemplo:
myhost:~)-> ps -ef | grep ssh-agent
501 986 1 0 10:18AM ?? 0:00.14 /usr/bin/ssh-agent -l
501 2126 736 0 5:30PM ttys007 0:00.00 grep ssh-agent
Para acessá-lo, você precisa descobrir onde está o soquete de escuta, geralmente em /tmp/com.apple.launchd.<blah>/Listeners
(onde <blah>
é algum identificador alfanumérico aleatório. É provável que haja vários, mas você quer aquele que tem o socket 'Listeners' nele).
Quando você encontrar o soquete, poderá se conectar a ele usando a variável de ambiente SSH padrão, SSH_AUTH_SOCK
. Por exemplo:
myhost:~)-> export SSH_AUTH_SOCK=/tmp/com.apple.launchd.1h2j3k4l5/Listeners
myhost:~)-> ssh-add ~/.ssh/id_rsa
Enter passphrase for ~/.ssh/id_rsa: <typing_here>
Identity added: ~/.ssh/id_rsa (~/.ssh/id_rsa)
Uma vez que isso é exportado para o shell, pode-se, neste momento, usar o comando ssh-add
para fornecer sua senha de chave e adicionar uma chave ao agente. Você também pode ver outras opções que você pode querer explorar nas páginas de manual do agente ssh.