linux ulimit 为啥不生效
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux ulimit 为啥不生效相关的知识,希望对你有一定的参考价值。
参考技术A ulimit 限制的是当前 shell 进程以及其派生的子进程。举例来说,如果用户同时运行了两个 shell 终端进程,只在其中一个环境中执行了 ulimit – s 100,则该 shell 进程里创建文件的大小收到相应的限制,而同时另一个 shell终端包括其上运行的子程序都不会受其影响。
如果要永久生效,就要写入相应的脚本啦,比如某用户的.bashrc文件,或修改系统的 /etc/security/limits 配置文件,或/proc 下的配置文件。本回答被提问者采纳
修改ulimit参数如何理解生效
参考技术A 一般情况下,ulimit
-n
的数值是1024.
当进程打开的文件数目超过此限制时,该进程就会退出。
因此,有时需要修改此限制。linux调优之修改最大连接数(ulimit命令)
如果只是普通用户,只是暂时的修改ulimit
-n,可以直接shell命令来修改(ulimit
-n
1024000)。
但是这个设置时暂时的保留!当我们退出bash后,该值恢复原值。
如果要永久修改ulimit,需要修改/etc/security/limits.conf。limits.conf配置(ulimit设置永久生效)
vim
/etc/security/limits.conf
#
添加如下的行
*
soft
nofile
4100
*
hard
nofile
4100
以下是说明:
*
代表针对所有用户
noproc
是代表最大进程数
nofile
是代表最大文件打开数
添加格式:
username|@groupname
type
resource
limit
username|@groupname:设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有用户的限制。
type:有
soft,hard
和
-,soft
指的是当前系统生效的设置值。hard
表明系统中所能设定的最大值。soft
的限制不能比har
限制高。用
-
就表明同时设置了
soft
和
hard
的值。
resource:
core
-
限制内核文件的大小(kb)
date
-
最大数据大小(kb)
fsize
-
最...一般情况下,
ulimit
-n
的数值是1024.
当进程打开的文件数目超过此限制时,该进程就会退出。
因此,有时需要修改此限制。linux调优之修改最大连接数(ulimit命令)
如果只是普通用户,只是暂时的修改ulimit
-n,可以直接shell命令来修改(ulimit
-n
1024000)。
但是这个设置时暂时的保留!当我们退出bash后,该值恢复原值。
如果要永久修改ulimit,需要修改/etc/security/limits.conf。limits.conf配置(ulimit设置永久生效)
vim
/etc/security/limits.conf
#
添加如下的行
*
soft
nofile
4100
*
hard
nofile
4100
以下是说明:
*
代表针对所有用户
noproc
是代表最大进程数
nofile
是代表最大文件打开数
添加格式:
username|@groupname
type
resource
limit
username|@groupname:设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有用户的限制。
type:有
soft,hard
和
-,soft
指的是当前系统生效的设置值。hard
表明系统中所能设定的最大值。soft
的限制不能比har
限制高。用
-
就表明同时设置了
soft
和
hard
的值。
resource:
core
-
限制内核文件的大小(kb)
date
-
最大数据大小(kb)
fsize
-
最大文件大小(kb)
memlock
-
最大锁定内存地址空间(kb)
nofile
-
打开文件的最大数目
rss
-
最大持久设置大小(kb)
stack
-
最大栈大小(kb)
cpu
-
以分钟为单位的最多
CPU
时间
noproc
-
进程的最大数目
as
-
地址空间限制
maxlogins
-
此用户允许登录的最大数目
以上是关于linux ulimit 为啥不生效的主要内容,如果未能解决你的问题,请参考以下文章
Linux 修改 内核参数sysctl.conf及ulimits.conf参数快速生效