Vor dem Upgrade
Wenn ich git clone git@...
einmal pro Computer einen Neustart ausgeführt habe (mit ssh), wurde ein Fenster mit einem Textfeld zum Einfügen meiner SSH-Passphrase angezeigt und mit OK bestätigt. Dann war die Passphrase bis zum nächsten Start meines Systems nicht mehr erforderlich.
Nach dem Upgrade auf 13.10
Nach dem Upgrade auf Ubuntu 13.10 erscheint dieses Fenster nicht mehr, sondern eine Meldung im Terminal:
Enter passphrase for key '/home/username/.ssh/id_rsa':
... jedes Mal, wenn Sie ein Git-Repository klonen, wird dies angezeigt.
Wie kann ich das beheben? Ich möchte meine Passphrase nur einmal eingeben.
ssh
git
passphrase
Ionică Bizău
quelle
quelle
ssh-add
Befehl dafür verwenden. Hast du es versucht?ssh-agent bash
+ssh-add
. Das funktioniert nur für wenige Minuten.AddKeysToAgent yes
to .ssh / config funktioniert bei mir.Antworten:
Auf jeden Fall wurde das Problem mit den folgenden Befehlen behoben:
Wie repariert man
Ich habe dies durch Eingabe der folgenden Befehle behoben:
Dadurch wird ein neuer Bash-Prozess erstellt, mit dem Sie private Schlüssel hinzufügen können. Wenn Sie einen neuen privaten Schlüssel hinzufügen, werden Sie nur einmal zur Eingabe der Passphrase aufgefordert.
Und dann:
... wo
username
ist dein Benutzername. Sie können dasselbe mit$USER
Variable tun :Alternativ verwenden Sie einfach
~
für Ihr Home-Verzeichnis.Und das Problem wurde behoben.
quelle
ssh-add
erneut tun.$ ssh-add /home/username/.ssh/id_rsa
(ohnessh-agent bash
) versucht und es hat auch nach dem erneuten Öffnen des Terminals funktioniert. Aber die Komplettlösung für mich war diese stackoverflow.com/a/4246809/532252 . Auch nach dem Neustart der Maschine ist alles in Ordnung.0) Kurze Antwort
Fügen Sie
.ssh/config
am Anfang eine Zeile hinzu:und starte git / ssh / ... Wenn es nicht ausreicht, überprüfe deine ssh-Version und stelle sicher, dass der ssh-agent mit folgenden Anweisungen geladen ist:
1) Überprüfen Sie die openssh-Version
Überprüfen Sie zunächst, ob Ihre ssh-Version größer als 7.2 sein muss :
2) Bearbeiten Sie die Konfigurationsdatei
Wenn dies der Fall ist, fügen Sie
.ssh/config
am Anfang einfach eine Zeile hinzu:3) Überprüfen Sie, ob ssh-agent bereits geöffnet ist
Normalerweise laden Distributionen automatisch einen ssh-Agenten. Um es zu überprüfen, führen Sie aus
Wenn Sie keine Zeile sehen, die sie enthält, müssen Sie sie laden, indem Sie Folgendes ausführen:
Beachten Sie, dass dadurch der Agent nur auf dem aktuellen Terminal aktiviert wird. Wenn Sie ihn also überall aktivieren möchten, können Sie versuchen, diese Zeile in Ihre
~/.profile
Datei einzufügen und einen Neustart durchzuführen.quelle
AddKeysToAgent yes
ist die kanonische Antwort für die Zeit nach 2016 - und genau das , worüber die meisten modernen Benutzer stehen. Es ist Mitte 2017. Ubuntu> = 16.04 ( Xenial Xerus ) ist jetzt eine vernünftige Annahme. Die meisten OpenSSH-Installationen in freier Wildbahn unterstützen diese Option. Ad-hoc-Shell-Script-Kludges, wie sie von jeder anderen Antwort auf diese Frage befürwortet werden, sind so ... passé .</sigh>
Dieses Atlassian-Dokument behebt das Problem für mich unter Ubuntu 14.04 Server Edition:
Fügen Sie einfach diese Werte in Ihre
.bashrc
Datei ein:Nach dem Einloggen werden Sie nur einmal nach dem Passwort gefragt und es wird zwischengespeichert. Sie müssen es nicht jedes Mal eingeben.
quelle
Eine Problemumgehung für diesen Fehler besteht darin, das Folgende am Ende von hinzuzufügen
~/.bashrc
quelle
.bashrc
. Sieht so aus, als müsst ihr es in eine DE-Profildatei einfügenBenutzer der Fischschale können dieses Skript verwenden , um dasselbe zu tun.
quelle
Ich benutze das:
quelle
Wenn Sie eine Azure-PPK-Datei verwenden
Konvertieren Sie es einfach in pem und fügen Sie die Berechtigung 400 mit einfachen Schritten hinzu:
quelle
Unter Ubuntu 18.04 wird der ssh-Agent beim Öffnen der Sitzung X gestartet und in der Datei /etc/X11/Xsession.options verwaltet:
quelle