介绍
最初知道mosh,是在某一期的内核恐慌中。
经常使用SSH的人大约都有过以下遭遇,喝杯茶的功夫,SSH就断了,tmux当然是个保持会话的选择,可烦人的事你还得进进出出ssh,现在你有了更好的选择:Mosh,它除了能帮你维持持久的ssh连接之外,还能提供更多的优化,比如让你的输入体验丝版顺滑,如同本地一般,尽管你的服务器在国外。
我现在的远程连接基本都是有Mosh,一次连接用不掉线,在移动办公,断网环境下简直酸爽。
正式的介绍
直接援引 官网的介绍就好:
Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes.
Mosh is a replacement for SSH. It's more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.
安装
mosh是个服务,和ssh类似,有server何client,所以需要在通信的两台机器上都安装。我的客户机是mac,而服务器是ubuntu
在服务器(ubuntu)上
sudo apt-get install mosh
在客户机(mac)上
sudo brew install mosh
配置
- 在服务器上开启两个UDP端口:60001和60002
- 我一般习惯让服务端支持中文(两边对语言环境支持不同可能引发bug)
配置中文环境的详细步骤
参考 ubuntu server日常中的 支持中文
使用
mosh USERNAME@IP
SSH端口
如果你更改了SSH的默认端口(22),假设改为2022,那么你需要这样连接:
mosh --ssh="ssh -p 2022" USERNAME@IP