电脑计算机论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 37|回复: 0

遇到ssh无法登录,资源不够,线程超限的解决办法

[复制链接]
admin 发表于 2026-8-28 21:43:40 | 显示全部楼层 |阅读模式
遇到一台服务器,无法通过特定用户ssh登录

测试发现可以通过root登录
su -  用户   提示资源不够。
解决过程:
ps -u 用户名              查看该用户下有哪些进程

ps -u 用户名 | wc -l   统计 用户下一共有多少行输出,间接得到进程数量

su -  用户名
ulimit -a        查看用户下业务进程限制


open files                      (-n) 1024      # ✅重点:单进程最大打开文件句柄数
pipe size            (512 bytes, -p) 8POSIX message queues     (bytes, -q) 819200real-time priority              (-r) 0stack size              (kbytes, -s) 8192cpu time               (seconds, -t) unlimited
max user processes              (-u) 4096     # ✅重点:该用户最大允许进程/线程数


如果想直观的得出结果: ulimit -u     只打印 max user processes,即单个用户最大允许进程 + 线程总数

发现 该用户最大允许进程数是4096, 而当前该用户下进程已经达到了4096,所以该用户无法再ssh登录了。

解决办法:强制杀死 该用户下全部进程  (需要确认该用户下业务进程可停止)
两种写法:
1) kill -9 $(ps -u d5000 -o pid=)
2)    ps -u d5000 -o pid= | xargs kill -9
其中   ps -u d5000 -o pid=  的意思就是  列出该用户的所有进程,-o pid 只输出pid列,最终得到的是 PID 列表,  然后把这个列表交给  kill -9
您需要登录后才可以回帖 登录 | 注册

本版积分规则


QQ|手机版|小黑屋|电脑计算机论坛 ( 京ICP备2022023538号-1 )

GMT+8, 2026-9-18 03:19 , Processed in 0.062637 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表