一、缘由:

  在启动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用户进程数的限制的更多相关文章

  1. linux上限制用户进程数、cpu占用率、内存使用率

    限制进程CPU占用率的问题,给出了一个shell脚本代码如下: renice +10 `ps aux | awk '{ if ($3 > 0.8 && id -u $1 > ...

  2. linux从用户组中删除某用户

    1. 从wheel组中删除 test用户 gpasswd wheel -d test 2. 给 目录赋予 其他组上传文件的权限 chmod a+w test

  3. nginx 中 ulimit 使用修改文件句柄数

    使用ulimit -a 可以查看当前系统的所有限制值, 使用ulimit -n<可以同时打开的文件数>设置用户可以同时打开的 最大文件数 linux系统默认的只要1024 当做负载较大的服 ...

  4. 如何在 Linux/Unix/Windows 中发现隐藏的进程和端口

    unhide 是一个小巧的网络取证工具,能够发现那些借助 rootkit.LKM 及其它技术隐藏的进程和 TCP/UDP 端口.这个工具在 Linux.UNIX 类.MS-Windows 等操作系统下 ...

  5. 优化mybatis框架中的查询用户记录数的案例

    通过对mybatis框架的中核心接口和类的分析,发现之前写的那个小demo是有问题的.现在对其进行部分优化. 如果存在多个功能的时候,势必会有很多重复的代码,如,创建sqlsession对象,关闭sq ...

  6. Linux 下监控用户最大进程数参数(nproc)是否到达上限

    Linux 下监控用户最大进程数参数(nproc)是否到达上限的步骤: 1.查看各系统用户的进程(LWP)数: 注意:默认情况下采用 ps 命令并不能显示出所有的进程.因为 Linux 环境下执行多线 ...

  7. Linux 下监控用户最大进程数参数(nproc)是否到达上限的步骤:

    https://www.cnblogs.com/autopenguin/p/6184886.html 1.查看各系统用户的进程(LWP)数: 注意:默认情况下采用 ps 命令并不能显示出所有的进程.因 ...

  8. Linux中最大进程数和最大文件数

    前言 Linux系统中可以设置关于资源的使用限制,比如:进程数量,文件句柄数,连接数等等. 在日常的工作中应该遇到过: -bash: fork: retry: Resource temporarily ...

  9. linux 进程数

    一.linux系统支持的最大进程数 限制1:既然系统使用pid_t表示进程号,那么最大进程数不能超过pid_t类型的最大值吧 限制2:使用命令ulimit -u查看系统中限制的最大进程数,我的机器上是 ...

随机推荐

  1. 从零开始学习Node.js例子九 设置HTTP头

    server.js //basic server的配置文件 ; var server = require('./basicserver').createServer(); server.useFavI ...

  2. c++ 顺序容器适配器

    第一次看到stack,以为它是一个和vector同等地位的容器,其实不是 官方解释:stacks are a type of container adaptor, specifically desig ...

  3. UI控件

    1.布局:一个Activity相当于一个手机屏幕默认和手机屏幕的宽高相同LinearLayout.RelativeLayout等布局继承了ViewGroup,ViewGroup是View的子类,可以容 ...

  4. CentOS 6.5 升级 GCC 4.9.3

    1. GUN官网下载源代码安装包: gcc-4.9.3.tar.gz 2. 解压安装包,并进入解压后的文件夹: tar -zxvf gcc-4.9.3.tar.gz 3. 使用压缩包中的工具下载依赖: ...

  5. 苹果Home键恢复(无工具篇)

    无工具法: 弹指神功.用手指轻轻弹Home,过了一阵子后可能会出现白色污垢,其后再重覆“弹”,直至正常为止.(亲测可用) 软件调试法.首先,打开任意一款应用程序,按住电源开关几秒钟,直到屏幕出现滑动关 ...

  6. must implement the inherited abstract method

    The type VideoView must implement the inherited abstract method MediaController.MediaPlayerControl.g ...

  7. textarea关于空格和换行那点事

    textarea中空格连续输入多个的情况下,数据回显的时候页面只是显示一个:换行同样有问题,在textarea中有换行,在页面上却没有,今天终于看到个写的比较具体的文章,拿过来收藏下. 地址链接: h ...

  8. 关于 ant 不同渠道自动打包的笔记

    必要的java.android.ant文件及循环打包用到的ant的jar 下载Ant(这里的Ant不是eclipse和android SDk里面自带的ant)      官方下载地址:http://a ...

  9. UVa 221城市正视图(离散化)

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  10. Tomcat 在mac中Operation not permitted

    5.执行/Library/Tomcat/bin下的startup.sh,然后打开http://localhost:8080查看是否Tomcat已经启动,若要停止服务器就运行同目录下的shutdown. ...