在使用mosh
连接到服务器Ubuntu 20.04
时,发现终端(终端是Kitty,支持256color
)的颜色不能正常显示。
使用命令查看了一下$TERM
的设置
|
|
显示的是xterm-256color
,说明配置的是没问题的。
查看mosh
的版本:
|
|
可以看到mosh
的版本是1.3.2
,这个版本的发布日期是2017-07-22
,但是github
上master
分支一直在开发中。
想着时间已经过去这么久了,官方应该已经解决了这个问题,毕竟现在的很多终端都是支持256color
的,所以就在issue
中搜索了一下,真的找到了一个解决方案。
定位问题
在2017年11月23号
就有人提过关于mosh的256color
显示支持问题,而官方也已经解决了这个问题,但是不知道为什么都已经过去这么久了还没有发布新的版本。
具体的issue。不过评论中说的PPA
也已经很久没有更新了。所以我们需要新的方案解决Linux
系统的问题。
解决方案
想要让mosh
能正确的显示256color
,就只能手动编译mosh的master分支
。
可以查看官方的安装教程,包含手动编译的教程。
记得先将之前的安装卸载掉。
- Mac
在MacOS
平台上,可以使用brew
来进行自动的编译和安装。
|
|
Mac
在编译安装的时候,会提示更新或者安装xcode命令行工具
,就按照brew
执行过程中的提示操作即可。
- Linux
在Ubuntu 20.04
上安装,需要手动克隆mosh
的仓库
在安装之前中,需要安装依赖,Ubuntu
最新版本的依赖,比较少。如果你是比较旧的版本,可以参考官方的编译教程,里面有详细的依赖。
|
|
|
|
最后执行make install
的时候,最好添加sudo
,因为涉及到将编译生成的可执行文件复制到系统可查找到的bin
目录下。
结尾
现在再使用mosh username@server_host
连接服务器,就可以显示256color
了。