ulimit

一 简介

 功能:控制shell程序的资源(ulimit为shell内建指令,可用来控制shell执行程序的资源)

 语法:ulimit [-aHS][-c <core文件上限>][-d <数据节区大小>][-f <文件大小>][-m <内存大小>][-n <文件数目>][-p <缓冲区大小>][-s <堆栈大小>][-t <CPU时间>][-u <程序数目>][-v <虚拟内存大小>]

 参数:

-a 显示目前资源限制的设定
-c 设定core文件的最大值,单位为区块
-d 程序数据节区的最大值,单位为KB
-f shell所能建立的最大文件,单位为区块
-H 设定资源的硬性限制,也就是管理员所设下的限制
-m 指定可使用内存的上限,单位为KB
-n 进程最大打开文件数(默认1024)
-p 指定管道缓冲区的大小,单位512字节
-s 指定堆叠的上限,单位为KB
-S 设定资源的弹性限制
-t 指定CPU使用时间的上限,单位为秒
-u 用户最多打开文件数
-v 指定可使用的虚拟内存上限,单位为KB

 

二 系统调优

 可用ulimit -a 显示目前资源限制的设定

 

 1 暂时修改,重启无效(直接在命令行输入)

#修改用户最大进程数
[root@localhost ~]# ulimit -u 100000

#修改每个进程可以打开的文件数目 [root@localhost ~]# ulimit -n 65535
#下为建议设置成无限制(unlimited)的一些重要设置
ulimit -d unlimited ulimit -m unlimited ulimit -s unlimited ulimit -t unlimited ulimit -v unlimited

 

 2 永久修改(通过将一个相应的 ulimit 语句添加到由登录 shell 读取的文件中, 即特定于 shell 的用户资源文件)

  设置 Linux 系统的最大进程数和最大文件打开数,重启后生效

  第一列表示用户和组(@开头)。第二列表示软限制还是硬限制,第三列表示限制的资源类型,第四列表示限制的最大值
  core是内核文件,nofile是文件描述符,noproc是进程,一般情况下只限制文件描述符数和进程数就够了

vim /etc/security/limits.conf
#OPPO Standard limits config
root hard nofile unlimited #root用户最大描述符使用数量--无限
* soft nofile 20480000 #*表示所有用户,超过发出警告
* hard nofile 20480000 #最大描述符使用数量,超过输出错误
* soft core unlimited
* hard core unlimited #内核文件最大打开数,一般不限制
* soft nproc unlimited #超过发出错误
* hard nproc unlimited #单个用户最大进程数,超过输出错误

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

[root@localhost ~]# vim /etc/profile
ulimit -u 10000
ulimit -n 65535
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited

 

posted @ 2020-12-08 12:07  心恩惠动  阅读(495)  评论(0编辑  收藏  举报