A maioria dos resultados do Google para a mensagem de erro mostra que isso resolve o problema:
eval $(ssh-agent)
ssh-add
As razões para este erro podem ser várias e você teria que analisar cada caso para ver o que está acontecendo.
Quando o ssh-agent é iniciado, ele configura duas variáveis de ambiente: SSH_AUTH_SOCK
e SSH_AGENT_PID
. Se você está encaminhando seu agente de outro host, este último não será definido.
SSH_AUTH_SOCK
é o "soquete de autenticação" mencionado na mensagem de erro.
Se você tiver um agente local ( SSH_AGENT_PID
está definido), é possível que o processo falhe ou não consiga gravar no soquete.
Se você tiver um agente encaminhado, as chances são de que o terminal remoto tenha fechado o soquete ou o processo local não consiga ler o soquete de encaminhamento.
Existem outras causas possíveis, é claro, mas estas são as que eu posso pensar agora ou me encontrei.
Você terá que diagnosticar cada caso, strace
e lsof
podem ajudar com isso.
Então, novamente, você poderia simplesmente começar um novo agente como sugerido por todos os outros e passar para algo mais divertido;)