Ich möchte eine Remote-Sitzung starten, ohne den folgenden Befehl einzugeben
ssh user@remoteserverip -t zsh
Ich weiß, dass ich die Hostnamen in ändern kann, um ~/.ssh/config
einfach so etwas zu verwenden:
ssh serveralias -t zsh
Aber ich möchte den -t zsh
Parameter entfernen .
Gibt es eine Möglichkeit, dies zu erreichen, ohne eine Funktion zu schreiben?
Antworten:
Ich denke nicht, dass das mit möglich ist
~/.ssh/config
. Dies-t
kann durch Hinzufügen von a abgedeckt werdenRequestTTY yes
, aber es scheint nicht, dass Sie den Remote-Befehl in angeben können~/.ssh/config
.Mit können
zsh
Sie jedoch Folgendes hinzufügen:zu deinem
~/.zshrc
.Oder machen Sie eine Funktion wie:
quelle
alias
wirklich richtig? Überprüfen Sie Ihre Angebote.Ich stimme @Stephane zu, dass es keine Möglichkeit gibt, dies mit dem zu tun
~/.ssh/config file
. Ein anderer Ansatz wäre, die~/.ssh/authorized_keys
Datei auf dem Remote-Server zu verwenden. Wenn Sie eine Zeile wie diese hinzufügen:Dann können Sie einfach wie gewohnt ssh und Sie erhalten ein zsh auf dem Remote-Server.
Beispiel
Auf dem Server ssh zu remote.
Bestätigen Sie auf dem Remote-Server, dass wir uns in einem befinden
zsh
.Mit dieser Datei können Sie ausführlichere Aufgaben ausführen. Lesen Sie die folgenden Fragen und Antworten mit dem Titel: ssh, starten Sie eine bestimmte Shell und führen Sie einen Befehl auf dem Remotecomputer aus. .
quelle
command="exec zsh"
ist eine schlechte Idee: Es macht es unmöglich, ssh mit einem expliziten Befehl auszuführen (also auf Wiedersehen, scp, rsync, ...). unix.stackexchange.com/a/20739 zeigt, wie dies anständig gemacht wird.Für alle, die Jahre später hier ankommen, ist es seit 2017 möglich, alles in die Konfigurationsdatei aufzunehmen:
quelle
quelle
Sie sollten die System-Shell-Einstellung besser ändern.
ssh serveralias
chsh
, um die System-Shell zu ändern/bin/zsh
, um es auf zsh zu setzenssh serveralias
dich wieder mit und es wird angezeigt%
chsh [username]
kann verwendet werden, um die Einstellungen anderer Benutzer ohne erneute Verbindung zu ändern.quelle