Für mich funktioniert Tramp 2.1.19-pre mit zsh und SSH-Authentifizierung mit kye
(setq tramp-shell-prompt-pattern "^[^$>\n]*[#$%>] *\\(\[[0-9;]*[a-zA-Z] *\\)*")
in meinen ~ / .emacs
Ich habe ein Problem mit dem Tramp gegen einen bestimmten Host, wenn ich ssh-keys für die Authentifizierung verwende. Es funktioniert gut, wenn ich die ssh-key-Authentifizierung nicht verwende, aber ich möchte die Eingabe des Passworts ständig verhindern.
Ich weiß nicht, ob es verwandt ist, aber ich benutze zsh für die Shell.
Ich habe die beiden Tipps befolgt, tramp-chunksize auf 500 zu setzen und den folgenden Code zu .zshrc hinzuzufügen:
if [[ "$TERM" == "dumb" ]] then unsetopt zle unsetopt prompt_cr unsetopt prompt_subst unfunction precmd unfunction preexec PS1='$ ' fi
Es funktioniert jedoch nicht und hängt immer noch mit der Meldung "Tramp: Warten" auf Eingabeaufforderungen von der Remote-Shell
Irgendwelche Ideen, wie man dieses nervige Thema verhindern kann? Vielen Dank.
Für mich funktioniert Tramp 2.1.19-pre mit zsh und SSH-Authentifizierung mit kye
(setq tramp-shell-prompt-pattern "^[^$>\n]*[#$%>] *\\(\[[0-9;]*[a-zA-Z] *\\)*")
in meinen ~ / .emacs
Ich sehe nicht, wie Ihre Remote-Shell das Problem sein könnte, wenn Tramp mit der Kennwortauthentifizierung arbeitet, nicht jedoch mit der Schlüsselauthentifizierung.
Eine mögliche Erklärung ist, dass ssh
Ihr SSH-Agent nicht angezeigt wird, wenn Sie ihn von Emacs aus ausführen. Können Sie sich mit ssh
einem Schlüssel M-x shell
oder einem M-x term
Puffer beim Remote-Computer anmelden ? Wenn Ihr Schlüssel eine Passphrase hat, ssh
muss er den entschlüsselten Schlüssel irgendwie abrufen. Es kann Sie direkt auffordern (aber ich bin mir nicht sicher, ob Tramp die Schlüsselabfrage durchlassen würde), oder es kann ein externes Programm starten, um Sie zur Eingabe der Taste aufzufordern (dazu muss die Umgebungsvariable SSH_ASKPASS
gesetzt sein) oder es kann der Schlüssel von Ihrem SSH-Agenten (dazu muss die Umgebungsvariable SSH_AUTH_SOCK
gesetzt sein). Ihr Problem könnte sein, dass Sie keine Einstellungen vornehmen SSH_ASKPASS
oder sich SSH_AUTH_SOCK
an der richtigen Stelle befinden, sodass dies nicht in Ihrer Emacs-Sitzung definiert ist.
Die Frage wurde bereits beantwortet. Wenn Sie jedoch darauf stoßen, sollten Sie vor der Präsentation der Shell prüfen, ob Ihre Shell nach Benutzereingaben fragt. Zum Beispiel sucht oh-my-zsh nach Updates und bittet um Bestätigung, bevor diese beim Shell-Start installiert werden. Dies führt dazu, dass der Tramp endlos auf eine Eingabeaufforderung wartet. Stellen Sie daher sicher, dass der Login reibungslos verläuft, wenn Sie ssh verwenden, bevor Sie den Tramp Rabbithole hinuntergehen.