ulimit 命令详解

ulimit 命令详解ulimit的简介及常用参数ulimit:显示(或设置)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程序在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止。参数描述ulimited不限制用户可

大家好,欢迎来到IT知识分享网。ulimit

ulimit 的简介及常用参数

ulimit:显示(或设置)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程序在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止。
参数 描述
ulimited 不限制用户可以使用的资源,但本设置对可打开的最大文件数(max open files)
和可同时运行的最大进程数(max user processes)无效
-a 列出所有当前资源极限
-b 最大套接字缓冲区大小
-c 设置core文件的最大值.单位:blocks
-d 设置一个进程的数据段的最大值.单位:kbytes
-f Shell 创建文件的文件大小的最大值,单位:blocks
-h 指定设置某个给定资源的硬极限。如果用户拥有 root 用户权限,可以增大硬极限。任何用户均可减少硬极限
-k 可以分配的最大 kqueue 数
-i 待处理信号的最大数量
-l 可以锁住的物理内存的最大值
-m 可以使用的常驻内存的最大值,单位:kbytes
-n 每个进程可以同时打开的最大文件数
-p 设置管道的最大值,单位为block,1block=512bytes
-s 指定堆栈的最大值:单位:kbytes,Java程序需要适当的设置大一点
-S 指定为给定的资源设置软极限。软极限可增大到硬极限的值。如果 -H 和 -S 标志均未指定,极限适用于以上二者
-t 指定每个进程所使用的秒数,单位:seconds
-u 单个用户可用的最大进程数
-v 进程可用的最大虚拟内存量,单位:kbytes
-x 文件锁的最大数量
-T 最大线程数 

l临时生效

ulimit -u 10240 # 用户的最大进程数
ulimit -n 4096  #每个进程可打开的文件数
ulimit -d unlimited #数据段长度
ulimit -m unlimited #最大内存大小
ulimit -s unlimited  #堆栈大小
ulimit -t unlimited #CPU 时间
ulimit -v unlimited #虚拟内存

 

永久生效

修改所有 linux 用户的环境变量文件

 vi /etc/profile.d/ulimit.sh # ~/.bashrc
    ulimit -u 10000
    ulimit -n 4096
    ulimit -d unlimited
    ulimit -m unlimited
    ulimit -s unlimited  
    ulimit -t unlimited
    ulimit -v unlimited

修改配置文件

# vi /etc/security/limits.conf
#<domain>        <type>  <item>  <value>

*               -       core             <value>
*               -       data             <value>
*               -       priority         <value>
*               -       fsize            <value>
*               soft    sigpending       <value> eg:57344
*               hard    sigpending       <value> eg:57444
*               -       memlock          <value>
*               -       nofile           <value> eg:1024
*               -       msgqueue         <value> eg:819200
*               -       locks            <value>
*               soft    core             <value>
*               hard    nofile           <value>
@<group>        hard    nproc            <value>
<user>          soft    nproc            <value>
%<group>        hard    nproc            <value>
<user>          hard    nproc            <value>
@<group>        -       maxlogins        <value>
<user>          hard    cpu              <value>
<user>          soft    cpu              <value>
<user>          hard    locks            <value>

<domain>可以是以下值

用户名
组名,带有@group语法
通配符*,用于默认条目
通配符%,也可以与%group语法一起使用,用于maxlogin限制

<type>可以有两个值: 

soft:用于执行软限制
hard:用于执行硬限制

<item>可以是以下之一

core- 限制核心文件大小 (KB)
data- 最大数据大小 (KB)
fsize- 最大文件大小 (KB)
memlock- 最大锁定内存地址空间 (KB)
nofile- 最大打开文件数
rss- 最大驻留集大小 (KB)
stack- 最大堆栈大小 (KB)
cpu- 最大 CPU 时间 (MIN)
nproc- 最大进程数(见下面的注释)
as- 地址空间限制 (KB)
maxlogins- 此用户的最大登录次数
maxsyslogins- 系统上的最大登录数
priority- 运行用户进程的优先级
locks- 用户可以持有的最大文件锁数
sigpending- 挂起信号的最大数量
msgqueue- POSIX 消息队列使用的最大内存(字节)
nice- 允许提升到值的最大优先级:[-20, 19]
rtprio- 最大实时优先级 

注意事项

在 /etc/security/limits.conf 中设置 nproc 在 Red Hat Enterprise Linux 中无效,要在/etc/security/limits.d/90-nproc.conf文件中修改。 

  

  

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/31236.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信