ssh连接报错Write failed: Broken pipe Resource temporarily unavailable

时间:2022-09-22 13:23:39

问题描述

  • 使用root连接服务器正常,切换普通用户连接报错
    • 具体报错如下:Write failed: Broken pipe
    • 或者:failed to execute /bin/bash: Resource temporarily unavailable
  • 使用root切换普通用户也报错
    • 具体报错如下:su: cannot set user id: Resource temporarily unavailable
  • 该普通用户运行java程序

问题原因

  • 排查是服务器系统普通用户默认文件描述符配置太小

问题处理

  • nproc(单个用户可用的最大进程数量)
    • 主要修改系统 nproc值,即可解决问题,
    • 1.在limit文件追加下面两行;
      vi  /etc/security/limits.conf  
      * soft nproc  65535
      * hard nproc  65535

    • 2.修改 nproc 默认值1024 到65535
      • centos 7.X以后新增了一个/etc/security/limits.d/20-nproc.conf 文件,用于控制nproc,这里面的默认配置是
        vi /etc/security/limits.d/20-nproc.conf
        * soft nproc  65535
        * hard nproc  65535

      • centos 6.X以后新增了一个/etc/security/limits.d/90-nproc.conf 文件,用于控制nproc,这里面的默认配置是
        vi /etc/security/limits.d/90-nproc.conf
        * soft nproc  65535
        * hard nproc  65535

参考连接