引用
#ulimit问题# 关于nproc设置:centos6,内核版本是2.6.32. 默认情况下,ulimit -u的值为1024,是/etc/security/limits.d/90-nproc.conf的值限制;注释掉这个限制后,值为95044;手工设置90-nproc.conf文件,值为新设置的值。想请 问这个95044是怎么来的?
这个问题挺有意思的,这里面有二个信息点:
1. 为什么limit配置文件是 /etc/security/limits.d/90-nproc.conf 而不是其他?
2. 为什么是nproc的值95044,而不是其他。
我们来简单的做下实验:
$ cat /etc/security/limits.d/90-nproc.conf
* soft nproc 8933
$ ulimit -u
8933
$ cat /etc/security/limits.d/90-nproc.conf #注释掉
#* soft nproc 8933
$ ulimit -u
385962
我们可以看出就是说当注释掉限制的话,不同的机器值是不同的。
在centos6的/etc/security/limits.d/90-nproc.conf限制下,个人用户可以修改ulimit-u,但root用户没法修改。
我们把etc/security/limits.d/90-nproc.conf改掉,会看到root的ulimit -u 可以修改成功。
我们一步步来看这个问题,首先看下 谁在使用 90-nproc.conf 这个文件:
$ cat t.stp
probe syscall.open.return {
filename = user_string($filename)
if (!isinstr(filename, "90-nproc.conf")) next;
printf("%s %d\n", execname(), pid());
}
$ sudo stap t.stp
sshd 24844
分享到:
相关推荐
Linux 系统中的打开文件数量限制问题是系统对程序打开文件数量的限制问题。这个限制可以通过 `ulimit -a` 命令来查看。默认情况下,Linux 系统的打开文件数量限制是 1024,可以通过修改这个值来增加可以打开的文件数...
针对这一问题,Linux提供了控制和限制普通用户能使用的最大系统资源的方法,以避免这种滥用。 首先,我们需要理解什么是僵尸进程。僵尸进程是在其父进程结束但本身尚未完全终止的进程。它们在进程表中仍然保留一个...
通过执行`ulimit -a`命令可以查看当前系统对各种资源的限制值,在默认情况下,Linux系统的最大进程数(nproc)和打开文件描述符数(nofile)通常被设置为1024,这对于大多数应用来说可能并不足够,特别是在高并发的...
3. **使用`ulimit`命令查看和调整限制**:`ulimit -a`可以显示所有资源限制,`ulimit -u`则用于查看或修改用户可创建的最大线程数。调整后,需要重启系统使新设置生效。 4. **注意性能优化**:线程数量并非越多越好...
根据实际情况,可以将普通用户的线程数限制调整至与`ulimit -u`显示的值相同,以确保有足够的线程供应用程序使用。 ##### 调整注意事项 - **避免使用root用户部署应用**:为了防止资源耗尽后无法登录操作系统,建议...
- **nproc限制**: `nproc`是对每个用户可创建进程数的限制,这会影响MySQL的连接数。需要在`/etc/security/limits.d/20-nproc.conf`中注释掉限制,然后添加相应的*nofile*限制。 - **知识点5:动态修改进程限制** ...
`ulimit -n`显示当前最大打开文件数,`ulimit -n 新值`设置新的限制。然而,临时设置的限制仅在当前shell会话有效,重启后会恢复原状。为了永久修改,我们需要按照以下步骤进行: 1. 编辑`/etc/security/limits....
11. **RLIMIT_NPROC** - 同一用户拥有的进程总数限制。 12. **RLIMIT_RTPRIO** - 实时调度优先级的限制。 13. **RLIMIT_SIGPENDING** - 可以挂起的信号数量限制。 14. **RLIMIT_STACK** - 栈大小的限制。 ### 函数...
在Linux环境下进行网络编程时,经常会遇到高并发场景下Socket连接数的限制问题。本篇文章将详细阐述如何针对这一问题进行优化,帮助开发者更好地理解和掌握相关技术。 #### 一、理解限制来源 在Linux系统中,每个...
- **确认方法**:使用`$ulimit -f`命令来查看当前Shell的最大文件限制。 - **调整方法**:如果当前限制不足,可以考虑调整此值。例如,将文件限制值设置为2097148,这意味着最大文件大小为1GB。 #### 十、HP-UX内核...
在安装过程中,确保遵循最佳实践,如正确配置权限、检查安装日志以排查任何可能出现的问题,以及在安装完成后进行必要的性能优化和安全设置。安装完成后,你还需要配置监听器、初始化参数文件,并创建数据库实例,...
默认限制可能不足以支持高并发的应用,可以通过`ulimit -u`临时修改,而在`/etc/security/limits.conf`或特定的配置文件(如`/etc/security/limits.d/20-nproc.conf`)中设置`soft nproc 10000`和`hard nproc 10000`...
对于 Oracle 用户,需要提高文件描述符和进程数量的限制,以避免因资源限制而导致的问题。具体配置如下: ```bash #---------------------Beginconfigureoracle10g--------------- oracle soft nofile 4096 # ...
在`/etc/security/limits.conf`文件中,为Oracle用户(在此案例中是`oracle`)添加或修改以下行,以提高进程(nproc)和打开文件(nofile)的数量: ```text oracle soft nproc 2047 oracle hard nproc 16384 ...
- `oracle hard nproc 16384`:设置硬限制的进程数。 - `oracle soft nofile 1024`:设置软限制的打开文件数。 - `oracle hard nofile 65536`:设置硬限制的打开文件数。 完成以上步骤后,系统环境基本满足Oracle ...
增加`nofile`参数可以提高单个用户的文件句柄限制,而`nproc`参数可以调整同时运行的进程数。 总结来说,解决"Too many open files"的问题,需要理解错误产生的原因,通过`lsof`等工具进行诊断,定位到问题进程,...
接下来是关于ulimit和nproc的设置。HBase数据库需要较高的文件句柄限制和进程数限制,因此需要修改`/etc/security/limits.conf`和`/etc/pam.d/mon-session`文件,以增加这些限制,防止因资源不足导致的错误。 ...
在`/etc/security/limits.conf`文件中,增加对Oracle用户的软硬限制,如nproc(进程数)和nofile(文件描述符数)。这将确保Oracle能够处理大量并发连接和文件操作。添加如下内容: ``` oracle soft nproc 2047 ...
编辑`/etc/security/limits.conf`以限制Oracle用户的文件描述符数量(`nofile`)和进程数量(`nproc`)。同样,还需要在`/etc/pam.d/login`中添加`session required pam_limits.so`以确保限制生效。最后,在`/etc/...