如何在缓慢/不稳定的连接上 ssh?

Zom*_*ies 22 ssh shell remote

我正在处理一个非常慢的外壳连接。它在云端,我离服务器很远。我的连接有时也会中断,因为它是通过 Internet 连接的,而且我也可能使用共享 Wifi 或 3G。有没有办法立即查看我输入的内容?尝试输入命令并等待每个字符是残酷的。

dmo*_*ati 25

试试莫什

Mosh(移动外壳)
远程终端应用程序,允许漫游,支持间歇性连接,并提供用户按键的智能本地回声和线路编辑。

Mosh 是 SSH 的替代品。它更加强大和响应迅速,尤其是通过 Wi-Fi、蜂窝和长途链接。

Mosh 是免费软件,可用于 GNU/Linux、FreeBSD、Solaris、Mac OS X 和 Android。

  • 对 mosh 的警告:(1) 它比 ssh 更占用 CPU。(2) 如果您的 mosh 会话没有正常结束,您将有一个永远无法重新建立的泄漏连接。(我必须清理我的外壳盒,否则会有几十个进程在运行)。 (3认同)

Oli*_*lac 10

dmourati 答案的另一种选择(也是补充):使用screentmux或其他东西,在您断开连接时保持会话活动。(您只需在重新连接后重新连接到会话,并在离开时看到终端,即使使用全屏程序 [vi 等])。它还具有许多其他好处(与同事共享会话等)(如 Mosh 自己的常见问题解答中所述:

问:为什么我的终端的回滚缓冲区不完整?

Mosh 1.2 只同步终端的可见状态。Mosh 1.3 将有完整的回滚支持;看到这个问题和从那里链接的其他问题。目前,解决方法是在远程端使用 screen 或 tmux。

而且您还应该使用rsync复制文件,而不必在连接中断时通过网络重新发送已发送的部分。