linux ulimit 的参数

简介:

Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,设置各linux 用户的最大进程数

可以用ulimit -a 来显示当前的各种用户进程限制。


下面我把某linux用户的最大进程数设为10000个:

    ulimit -u 10240

    对于需要做许多 socket 连接并使它们处于打开状态的 Java 应用程序而言,

    最好通过使用 ulimit -n xx 修改每个进程可打开的文件数,缺省值是 1024。

    ulimit -n 4096 将每个进程可以打开的文件数目加大到4096,缺省为1024

    其他建议设置成无限制(unlimited)的一些重要设置是:

    数据段长度:ulimit -d unlimited

    最大内存大小:ulimit -m unlimited

    堆栈大小:ulimit -s unlimited

    CPU 时间:ulimit -t unlimited

    虚拟内存:ulimit -v unlimited


如果我们只是普通用户,只是暂时的修改ulimit -n可以直接shell命令来修改(ulimit-n 1024000)。但是这个设置时暂时的保留!当我们退出bash后,该值恢复原值。


如果要永久修改ulimit,需要修改/etc/security/limits.conf 

1.先用命令ulimit -n 查看目前的值 

2. vim /etc/security/limits.conf 
 建议把下面两项都设置为65535 

     # 添加如下的行

    * soft noproc 11000

    * hard noproc 11000

    * soft nofile 65535

    * hard nofile 65535

(前面的*星号代表针对所有的用户;noproc 是代表最大进程数nofile代表最大文件打开数;soft nofile的值不能超过hard nofile的值)  


3. 让 SSH 接受 Login 程式的登入,方便在 ssh 客户端查看 ulimit -a 资源限制:

        a、vi /etc/ssh/sshd_config

            把 UserLogin 的值改为 yes,并把 # 注释去掉

        b、重启 sshd 服务:

              /etc/init.d/sshd restart

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

    vi /etc/profile

    ulimit -u 10000

    ulimit -n 4096

    ulimit -d unlimited

    ulimit -m unlimited

    ulimit -s unlimited

    ulimit -t unlimited

    ulimit -v unlimited

 保存后运行#source /etc/profile 使其生效


ulimit 的作用

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


参数 描述

ulimited 不限制用户可以使用的资源,但本设置对可打开的最大文件数(max open files)

和可同时运行的最大进程数(max user processes)无效

-a 列出所有当前资源极限

-c 设置core文件的最大值.单位:blocks

-d 设置一个进程的数据段的最大值.单位:kbytes

-f Shell 创建文件的文件大小的最大值,单位:blocks

-h 指定设置某个给定资源的硬极限。如果用户拥有 root 用户权限,可以增大硬极限。任何用户均可减少硬极限

-l 可以锁住的物理内存的最大值

-m 可以使用的常驻内存的最大值,单位:kbytes

-n 每个进程可以同时打开的最大文件数

-p 设置管道的最大值,单位为block,1block=512bytes

-s 指定堆栈的最大值:单位:kbytes

-S 指定为给定的资源设置软极限。软极限可增大到硬极限的值。如果 -H 和 -S 标志均未指定,极限适用于以上二者

-t 指定每个进程所使用的秒数,单位:seconds

-u 可以运行的最大并发进程数

-v Shell可使用的最大的虚拟内存,单位:kbytes

-x


添加格式:

username|@groupname       type     resource       limit

username|@groupname:设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有用户的限制。

type:有softhard  -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 - 此用户允许登录的最大数目

本文转自奔跑在路上博客51CTO博客,原文链接http://blog.51cto.com/qiangsh/1865401如需转载请自行联系原作者


qianghong000

相关文章
|
3月前
|
Linux Shell
在Linux中,umask 和 ulimit有什么区别?
在Linux中,umask 和 ulimit有什么区别?
|
3月前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。
|
4月前
|
Linux
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
|
3月前
|
安全 Linux Shell
linux查看/修改各种资源限制ulimit
在Linux资源管理中,适当的使用 `ulimit`,结合系统配置文件的修改,可以更好地控制和优化系统资源,提高系统的稳定性和效率。对于系统管理员而言,精通这些知识是十分必要的,可以有效地防止因资源滥用导致的各种问题。
204 5
|
3月前
|
网络协议 Linux Shell
在Linux中,linux内核参数如何修改?
在Linux中,linux内核参数如何修改?
|
3月前
|
监控 Linux 测试技术
什么是Linux系统的网络参数?
【8月更文挑战第10天】什么是Linux系统的网络参数?
54 5
|
4月前
|
运维 Java Linux
(九)JVM成神路之性能调优、GC调试、各内存区、Linux参数大全及实用小技巧
本章节主要用于补齐之前GC篇章以及JVM运行时数据区的一些JVM参数,更多的作用也可以看作是JVM的参数列表大全。对于开发者而言,能够控制JVM的部分也就只有启动参数了,同时,对于JVM的性能调优而言,JVM的参数也是基础。
102 8
|
3月前
|
缓存 网络协议 Unix
Linux 内核参数
Linux 内核参数
86 1
|
3月前
|
存储 安全 Linux
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
|
3月前
|
存储 Linux Shell
在Linux中,如何编写脚本处理命令行参数?
在Linux中,如何编写脚本处理命令行参数?
下一篇
无影云桌面