Devi prima inizializzare l'agente.
Puoi farlo in diversi modi, avviando una nuova shell
ssh-agent bash
o valutando le variabili restituite da ssh-agent
nella tua shell attuale.
eval "$(ssh-agent)"
Suggerisco di utilizzare il secondo metodo, perché conservi tutta la cronologia e le variabili.
L'agente SSH non è in esecuzione o le variabili di ambiente che imposta non sono disponibili nell'ambiente corrente (soprattutto SSH_AUTH_SOCK
), oppure sono impostati in modo errato (indicando un dead agent).
Puoi avviare l'agente nella sessione di shell corrente usando
eval "$(ssh-agent)"
oppure avviare una nuova sessione shell tramite l'agente utilizzando
ssh-agent fish
(sostituisci fish
con qualunque shell tu stia usando). Ma dal momento che dici che lo facevi essere in grado di utilizzare ssh-add
senza questo, mi porta a credere che tu abbia accidentalmente ucciso l'agente (o che sia terminato per qualche altro motivo). Il messaggio di errore mi fa pensare che il file SSH_AUTH_SOCK
la variabile d'ambiente è effettivamente impostata, ma quel ssh-add
non riesce a trovare un socket di comunicazione valido in quel percorso.
Non mi sorprenderebbe se il tuo solito modo di fare le cose funzionasse di nuovo se ti disconnetti completamente e riaccedi o riavvii la macchina.
In Windows PowerShell (esegui come amministratore):
-
Controlla lo stato corrente di ssh-agent :
Get-Service | ?{$_.Name -like '*ssh-agent*'} | select -Property Name, StartType, Status
-
Abilita il servizio se è disabilitato:
Set-Service -Name ssh-agent -StartupType Manual
-
Avvia il servizio:
Start-Service ssh-agent
-
Aggiungi la tua chiave come prima:
ssh-add <path to the key>