[Linux] 关于Centos6中ulimit nproc用户进程数的限制
一、缘由:
在启动mongodb的时候,有Warning提示soft rlimits too low,就是用户使用进程数过小,遂调高系统资源关于用户最大进程数的限制ulimit -u。
先暂时使设置生效,ulimit -u 102400,提示: ulimit: max user processes: cannot modify limit: Operation not permitted。
修改/etc/security/limits.conf 为 * soft nproc 102400,退出shell后重新登陆,依然不行。后经Google是/etc/security/limits.d/90-nproc.conf
的限制,在Centos 6中。
二、解决办法:
文件90-nproc.conf中由此解释Default limit for number of user's processes to prevent,可见这个文件默认用来限制用户拥有的最大进程数量。
经查看,每个用户(*)的nproc被限制为65535,故设置100000超过系统最大用户进程数限制。
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz # for reasoning.
* soft nproc
* hard nproc 65535
故需要修改90-nproc.conf为 soft nproc 100000,重新登录后即可生效。
或者,如果只是相对某个单个用户进行限制更改,可以修改/etc/security/limits.conf,将*改成具体用户名也是可以生效的。
比如:
mongod soft nproc 100000
mongod hard nproc 100000
注:楼主曾尝试在90-nproc.conf中设置nofile的值,也是可以生效的,系统以他为标准;但是不建议这么设置。
三、关于linux下用户资源限制limits.conf详解
1、limits.conf文件实际上是linux PAM(认证模块)中pam_limits.so的配置文件,而且只针对单个会话。
2、要使limits.conf文件配置生效,必须确保pam_limits.so文件被加入启动文件中。要查看/etc/pam.d/login文件中有session required /lib/security/pam_limits.so
limits.conf文件格式如下:
<domain> <type> <item> <value>
domain有好几种格式,具体可以用cat limits.conf来查看,不过一般来说,我们都是用的用户名和组名的形式:username|@groupname
设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有的限制。
type:有soft,hard和-,soft指的是当前系统生效的设置值,软限制也可以理解为警告值。hard表名系统中所能设定的最大值。soft的限制不能比hard限制高,
用 - 表明同时设置了soft和hard的值。
item表明需要限制的使用资源类型
core 限制内核文件的大小
data 最大数据大小
fsize 最大文件大小
memlock 最大锁定内存地址空间
nofile 打开文件的最大数目
rss 最大持久设置大小
stack 最大栈大小
cpu 以分钟为单位的最多CPU时间
noproc 进程的最大数目
as 地址空间限制
maxlogins 此用户允许登录的最大数目
[Linux] 关于Centos6中ulimit nproc用户进程数的限制的更多相关文章
- linux上限制用户进程数、cpu占用率、内存使用率
限制进程CPU占用率的问题,给出了一个shell脚本代码如下: renice +10 `ps aux | awk '{ if ($3 > 0.8 && id -u $1 > ...
- linux从用户组中删除某用户
1. 从wheel组中删除 test用户 gpasswd wheel -d test 2. 给 目录赋予 其他组上传文件的权限 chmod a+w test
- nginx 中 ulimit 使用修改文件句柄数
使用ulimit -a 可以查看当前系统的所有限制值, 使用ulimit -n<可以同时打开的文件数>设置用户可以同时打开的 最大文件数 linux系统默认的只要1024 当做负载较大的服 ...
- 如何在 Linux/Unix/Windows 中发现隐藏的进程和端口
unhide 是一个小巧的网络取证工具,能够发现那些借助 rootkit.LKM 及其它技术隐藏的进程和 TCP/UDP 端口.这个工具在 Linux.UNIX 类.MS-Windows 等操作系统下 ...
- 优化mybatis框架中的查询用户记录数的案例
通过对mybatis框架的中核心接口和类的分析,发现之前写的那个小demo是有问题的.现在对其进行部分优化. 如果存在多个功能的时候,势必会有很多重复的代码,如,创建sqlsession对象,关闭sq ...
- Linux 下监控用户最大进程数参数(nproc)是否到达上限
Linux 下监控用户最大进程数参数(nproc)是否到达上限的步骤: 1.查看各系统用户的进程(LWP)数: 注意:默认情况下采用 ps 命令并不能显示出所有的进程.因为 Linux 环境下执行多线 ...
- Linux 下监控用户最大进程数参数(nproc)是否到达上限的步骤:
https://www.cnblogs.com/autopenguin/p/6184886.html 1.查看各系统用户的进程(LWP)数: 注意:默认情况下采用 ps 命令并不能显示出所有的进程.因 ...
- Linux中最大进程数和最大文件数
前言 Linux系统中可以设置关于资源的使用限制,比如:进程数量,文件句柄数,连接数等等. 在日常的工作中应该遇到过: -bash: fork: retry: Resource temporarily ...
- linux 进程数
一.linux系统支持的最大进程数 限制1:既然系统使用pid_t表示进程号,那么最大进程数不能超过pid_t类型的最大值吧 限制2:使用命令ulimit -u查看系统中限制的最大进程数,我的机器上是 ...
随机推荐
- Java(四)
下面的代码可以实现以字节为单位复制文件的功能,适合复制非文本类型的文件,为了更清楚的观测运行速率,我加入了程序计时器,代码如下: import java.io.FileInputStream; imp ...
- 使用RelativeLayout控制WebView以及Bottom按钮的位置
使用RelativeLayout控制WebView以及Bottom按钮的位置 (地址) 在Design View中加入控件RelativeLayout, WebView, LinearLayout(H ...
- SDK截图程序(一)
程序将系统窗口左上角100*100的图像复制到粘贴板上.程序的关键位置上加上了注释,相关知识<windows程序设计>第14章内容 #include <windows.h> # ...
- redis-cluster 迁移过程错误记录
因为集群内的 单点redis消耗 内存达到了14个G,所以需要增加新的节点,并将数据迁移过去,使用 redis-trib reshard ip:port A : 2105slot 14.5 ...
- 系统中异常公共处理模块 in spring boot
最近在用spring boot 做微服务,所以对于异常信息的 [友好展示]有要求,我设计了两点: 一. 在业务逻辑代码中,异常的抛出 我做了限定,一般只会是三种: 1. OmcException // ...
- stunnel-server
#!/bin/bash # need to be run as root ]]; then echo "must to be run as root" exit fi # givi ...
- Eclipse “cannot be resolved to a type” 错误
eclipse中遇到了“XX cannot be resolved to a type”的报错信息.网上找了些资料,本文将做以简单总结. (1)jdk不匹配(或不存在) 项目指定的jdk为“j ...
- ViewStub的简单用法和说明
最近无意间知道了ViewStub,所以特地的去了解了一下 都知道ViewStub是一个不可见的,大小为0的View,实际上跟include差不多,但是ViewStub要更加节约资源.被称为是" ...
- 安装ftp 服务器
安装ftp 服务器 #yum install vsftp 安装ftp 客户端 重启ftp服务器 sudo /etc/init.d/vsftpd restart /start /stop 进行ARM 和 ...
- Spring使用ThreadLocal技术来处理这些问题
过去我习惯于从左到右的思考,因为这符合书写的习惯,对于“好”得前端工程师,我们首先可能会去思考什么是好,好的定义和范围,标准和要求?但现在我习惯于从右到左的思考,因为我觉得越是抽象越难以定义,从粒度更 ...