搜索
linux - 通过ssh连入服务器然后vim代码, 经常会断掉连接, 显示 `Broken pipe`, 怎么改善?
大家讲道理
大家讲道理 2017-04-17 13:16:05
[Linux讨论组]

用的aliyun服务器, 配置如下:

ubuntu 14.04
CPU: 4核
内存: 8GB
带宽: 6Mbps

本地的环境:

archlinux
xfce4-terminal

在本地ping服务器:

from : icmp_seq=1 ttl=49 time=5.82 ms
64 bytes from x.x.x.x: icmp_seq=2 ttl=49 time=11.1 ms
64 bytes from x.x.x.x: icmp_seq=3 ttl=49 time=8.18 ms
64 bytes from x.x.x.x: icmp_seq=4 ttl=49 time=7.46 ms
64 bytes from x.x.x.x: icmp_seq=5 ttl=49 time=7.79 ms

--- x.x.x.x ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms

ssh 设置参考 这篇wiki中的 Speeding up SSH, Keep alive 等章节.

通过ssh连入服务器vim代码, 经常断掉连接, 显示Broken pipe, 痛不能举.

目前在用的折中方法是 sshfs.

请问, 是哪里的存在短板? 还有没有其他更好的方法?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(5)
伊谢尔伦

在服務端安裝tmux 或者screen, ssh進入服務端後, 打開tmux 或者screen 的sessions. 這樣就算broken pipe後, 也可以重新鏈接.

PHPz

我觉得你可以试试mosh,有时候连接国外的出现问题,经常用.

天蓬老师

可以试试 tmux
具体用法搜索下

PHP中文网

ssh 有个超时时间,如果在超时时间内没有操作就会Broken pipe解决方法
或者可以不使用终端,用一些图形界面的ssh工具

PHPz

问题的原因是 ssh 一段时间没有信息发送会自动断开,如果一定要用 ssh,可以去配置里面修改这个时间阈值。我比较推荐两种办法:

  1. 使用 mosh

Mosh is a replacement for SSH. It's more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.

  1. 使用 tmux

这样即便断开了连接,重新连上的时候,所有东西都能恢复。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板