文章目录
ssh登录远程服务,忽然提示su: failed to execute /bin/bash: 资源暂时不可用
,然后通过root账号登录服务器没有问题,但是使用su切换用户时,依然失败,提示上面的错误,搜索一下可能原因是线程数沾满,杀掉一些占用大量线程的进程即可;然后记录下linux下线程数的相关操作
I. 最大值查询
1. 最大进程数查询
1 | cat /proc/sys/kernel/pid_max |
个人阿里云机器(单核2g)上输出如下
1 | 32768 |
2. 最大线程数查询
1 | cat /proc/sys/kernel/threads-max |
阿里云机器输出如下
1 | 14566 |
3. 用户最大进程数
1 | ulimit -u |
输出
1 | 7283 |
4. 用户进程数查询
1 | # 显示所有进程 |
II. JVM设置
java应用启动时,可以通过设置相关参数来限制
1 | -Xms #intial java heap size |
III. 进程的线程数查询
1. 具体进程的线程数查询
想知道一个进程开辟了多少个线程,有两种姿势,常见的ps和pstree
1 | ps -hH 进程号 | wc -l |
或者使用
1 | pstree -p 进程号 | wc -l |
2. 获取所有java的线程总数
利用管道来做这个统计,如下
1 | ps aux | grep java | awk '{print $2}' | xargs -I {} pstree -p {} | wc -l |
3. 查询当前用户所有线程数
不指定具体的进程号即可
1 | pstree -p | wc -l |
II. 其他
1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛
2. 声明
尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 扫描关注
一灰灰blog
知识星球