ssh-add gibt Folgendes zurück: "Fehler beim Herstellen einer Verbindung zum Agenten: Keine solche Datei oder kein solches Verzeichnis"

24

ssh-add allein geht nicht:

Error connecting to agent: No such file or directory

Wie soll ich das Tool verwenden?

Wong Jia Hau
quelle
1
Liebe Moderatoren, wurde ich auf dieser Seite aus zu bewegt diese Frage Stackoverflow , aber dann habe ich wieder downvote? Kannst du mir wenigstens sagen warum?
Wong Jia Hau
Ich bin kein Moderator, aber einfach die Fehlermeldung zu googeln hätte dir eine Antwort gegeben. stackoverflow.com/questions/17846529/…
Panki
1
@Panki Ich habe diese Lösung ausprobiert, sie funktioniert nicht. Deshalb habe ich eine neue Frage gestellt.
Wong Jia Hau
1
Bitte lesen Sie unsere FAQ, machen Sie die Tour und lauern Sie eine Weile, um ein Gefühl für die Verwendung des Forums zu bekommen.
Rui F Ribeiro
1
Vielen Dank für alle Moderatoren, die mir geholfen haben, diese Fragen zu verbessern!
Wong Jia Hau

Antworten:

29

Sie müssen zuerst den Agenten initialisieren.

ssh-agent bash
Panki
quelle
2
Danke, es funktioniert für mich! Da ich benutze fish, ist der Befehl ssh-agent fish.
Wong Jia Hau
das hat bei mir nicht funktioniert
Necktwi
Ich möchte keine zusätzliche Bash unter Agent
ausführen
18

Der SSH-Agent wird nicht ausgeführt, oder die von ihm festgelegten Umgebungsvariablen sind in der aktuellen Umgebung nicht verfügbar (was am wichtigsten ist SSH_AUTH_SOCK), oder sie sind falsch festgelegt (und verweisen auf einen toten Agenten).

Sie können den Agenten in der aktuellen Shell-Sitzung mit starten

eval "$(ssh-agent)"

oder starten Sie eine neue Shell-Sitzung über den Agenten mit

ssh-agent fish

(Ersetzen fishSie sie durch die von Ihnen verwendete Shell.) Aber da Sie sagen , dass Sie es gewohnt nutzen zu können , ssh-addohne dass dies, es führt mich zu glauben , dass Sie versehentlich den Agenten getötet haben (oder es wurde wegen einem anderen Grund beendet). Die Fehlermeldung lässt mich denken, dass die SSH_AUTH_SOCKUmgebungsvariable tatsächlich gesetzt ist, aber dass ssh-addan diesem Pfad kein gültiger Kommunikationssocket gefunden werden kann.

Es würde mich nicht überraschen, wenn Ihre gewohnte Vorgehensweise wieder funktionieren würde, wenn Sie sich vollständig abgemeldet und wieder angemeldet oder den Computer neu gestartet hätten.

Kusalananda
quelle
Ja, ich glaube, ich habe den Agenten versehentlich getötet, möglicherweise aufgrund eines Neustarts der Maschine.
Wong Jia Hau
Vielen Dank! Mein Problem mit "Erlaubnis verweigert"
Lorin Rivers
4

In Windows Power Shell:

  1. Überprüfen Sie den aktuellen Status von ssh-agent: "Get-Service | select -property name, starttype"
  2. Legen Sie den neuen Typ fest: "Set-Service -Name ssh-agent -StartupType Manual"
  3. Starten Sie es: "Start-Service ssh-agent"
  4. Fügen Sie Ihren Schlüssel wie zuvor hinzu: "ssh-add"
Chris
quelle