• SSH的 Write failed: Broken pipe 问题


    问题现象:

      

       表示连接管道已经断开

    解决方法:  

      方法一:客户端配置
      在客户端的 ~/.ssh/ config文件(如不存在请自行创建)中添加下面内容:
      ServerAliveInterval 60

      方法二:服务器端配置
      在服务器的 /etc/ssh/sshd_config 中添加如下的配置:
      ClientAliveInterval 60

      方法三:临时SSH命令配置
      如果只是临时性的连接(即只作用于当前SSH),可以直接使用 ssh 命令参数进行配置。
      $ ssh -o ServerAliveInterval=60 user@sshserver

    //ServerAliveInterval
             Sets a timeout interval in seconds after which if no data has
             been received from the server, ssh(1) will send a message through
             the encrypted channel to request a response from the server.  The
             default is 0, indicating that these messages will not be sent to
             the server.  This option applies to protocol version 2 only.
    //ClientAliveInterval
             Sets a timeout interval in seconds after which if no data has
             been received from the client, sshd(8) will send a message
             through the encrypted channel to request a response from the
             client.  The default is 0, indicating that these messages will
             not be sent to the client.  This option applies to protocol
             version 2 only.
    

      这两个命令前者应用在客户机上,后者应用在服务器上,如果没有管理员权限,那么前者是很好的选择。
      这两个的功能是相同的,都是开启一个发送keep-alive包的功能,这样会允许客户端/服务器在一定时间内发送一个特定的包给对方,一旦超时,则说明断线,就关闭链接。这样就避免了链接长时间挂着导致报错。而且,一旦再次报错,稍等片刻便可以再次登录。

  • 相关阅读:
    双链表 teacherboubleloopnohead
    System.Reflection(温习二)
    在地址栏调试js(小技巧)
    在vs2005中的ReportViewer(RDLC报表)中使用直接打印功能,在vs2005使用ReportViewer2008
    .net的手动编译类方法
    System.Reflection(温习)
    https://imo.im/
    SOA是什么(转)
    ASP.NET的编译方法(转,复习一下)
    动态生成一个继承接口的类
  • 原文地址:https://www.cnblogs.com/qianyuliang/p/11926683.html
Copyright © 2020-2023  润新知