Vous devez d'abord initialiser l'agent.
Vous pouvez le faire de plusieurs façons. Soit en démarrant un nouveau shell
ssh-agent bash
soit en évaluant les variables retournées par ssh-agent
dans votre shell actuel.
eval "$(ssh-agent)"
Je suggère d'utiliser la deuxième méthode, car vous conservez tout votre historique et vos variables.
L'agent SSH n'est pas en cours d'exécution ou les variables d'environnement qu'il définit ne sont pas disponibles dans l'environnement actuel (surtout SSH_AUTH_SOCK
), ou ils sont mal définis (pointant vers un agent mort).
Vous pouvez démarrer l'agent dans la session shell en cours en utilisant
eval "$(ssh-agent)"
ou démarrer une nouvelle session shell via l'agent en utilisant
ssh-agent fish
(remplace fish
quel que soit le shell que vous utilisez). Mais puisque tu dis que tu avais l'habitude être capable d'utiliser ssh-add
sans cela, cela me porte à croire que vous avez accidentellement tué l'agent (ou qu'il s'est terminé pour une autre raison). Le message d'erreur me fait penser que le SSH_AUTH_SOCK
la variable d'environnement est en fait définie, mais que ssh-add
impossible de trouver un socket de communication valide sur ce chemin.
Cela ne me surprendrait pas si votre façon habituelle de faire les choses fonctionnait à nouveau si vous vous déconnectiez complètement et vous reconnectiez, ou redémarriez la machine.
Dans Windows PowerShell (exécuté en tant qu'administrateur) :
-
Vérifier l'état actuel de ssh-agent :
Get-Service | ?{$_.Name -like '*ssh-agent*'} | select -Property Name, StartType, Status
-
Activez le service s'il est désactivé :
Set-Service -Name ssh-agent -StartupType Manual
-
Démarrer le service :
Start-Service ssh-agent
-
Ajoutez votre clé comme avant :
ssh-add <path to the key>