Ich habe es mit einer sehr langsamen Shell-Verbindung zu tun. Es befindet sich in der Cloud und ich bin sehr weit vom Server entfernt. Meine Verbindung bricht auch manchmal ab, da dies über das Internet geschieht, und ich verwende möglicherweise auch gemeinsames Wifi oder 3G. Gibt es eine Möglichkeit zu sehen, was ich sofort tippe? Der Versuch, Befehle einzugeben und auf jedes Zeichen zu warten, ist grausam.
20
Antworten:
Versuchen Sie es mit Mosh .
quelle
eine alternative (und auch ergänzende) zu dmourati antwort: benutze
screen
odertmux
oder andere Dinge, um Sitzungen am Leben zu halten, wenn Sie nicht verbunden sind. (Sie können die Verbindung nach dem erneuten Herstellen der Verbindung einfach wieder herstellen und das Terminal so anzeigen, wie Sie es verlassen haben, auch mit Vollbildprogrammen [vi usw.].) Es hat auch viele andere Vorteile (gemeinsame Nutzung von Sitzungen mit Kollegen usw.) (wie in der FAQ von Mosh angegeben:Außerdem sollten Sie
rsync
zum Kopieren von Dateien verwenden, ohne bereits gesendete Teile erneut über das Netzwerk senden zu müssen, wenn die Verbindung unterbrochen wird.quelle
Sie sollten sehen, wo die Latenz / Engpässe sind. Sie sollten versuchen, einen besseren Zugang zur Infrastruktur zu erhalten ... entweder vor Ort oder auf der Seite des Anbieters. Sie wickeln Ihre wichtigen oder kritischen Sitzungen in
tmux
oderscreen
Multiplexer ...Bitte geben Sie uns Zahlen. Für einfache SSH-Sitzungen ist eine besonders schlechte Verbindung erforderlich, um Probleme zu haben. Ich musste von einem Flugzeug über ein VPN auf Systeme auf der anderen Seite der Welt zugreifen und hatte immer noch nicht allzu viele Probleme. Ist das ein hartnäckiges Problem? Was
traceroute
sagt dir das?quelle
Für zukünftige Leser dieses Threads könnte der Tipp von @lowellheddings in seinem Blog zusammen mit der Verwendung von screen helfen, dieses Problem zu lösen :
Sie können den ssh-Client so konfigurieren, dass er automatisch alle Sekunden einen Protokoll-No-Op-Code sendet, damit der Server Sie nicht trennt. Diese Einstellung wird in anderen Clients manchmal als "Keep-Alive" oder "Stop-Disconnecting-So-Much" bezeichnet.
Fügen Sie der Datei / etc / ssh / ssh_config die folgende Zeile hinzu:
ServerAliveInterval 60
...
quelle