Linux修改资源限制详解
Linux修改资源限制详解
- ulimit -a
- 临时设置,和永久设置
- 1.core file size
- 2.data seg size
- 3.scheduling priority
- 4.file size
- 5.pending signals
- 6.max locked memory
- 7.max memory size
- 8.open files
- 9.pipe size
- 10.POSIX message queues
- 11.real-time priority
- 12.stack size
- 13.cpu time
- 14.max user processes
- 15.virtual memory
- 16.file locks
- 确保生效
- 1.添加
- 2.检查
参考:https://cloud.tencent.com/developer/article/1661160
ulimit -a
[root@localhost ~]# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 63445
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 63445
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
临时设置,和永久设置
1.临时设置
所有值都可以使用ulimit -c,-d,-e,… +数值,临时设置,
eg:设置core file size 为1024,
ulimit -c 1024
2.永久设置
对于ulimit的配置,配置文件在/etc/security/limits.conf以及limits.d下面的文件,
limits.d下面的配置会覆盖limits.conf中相同的配置
CentOS6中,limits.d下面通常默认是90-nproc.conf,
CentOS7中,通常是20-nproc.conf,nproc是限制每个用户创建进程数的
设置格式如下:
limits.conf的格式
<domain> <type> <item> <value>
domain:用户或组名,*表示所有,user@group
type:soft,hard,hard表明系统中所能设定的最大值,soft的限制不能比hard限制高.
item:
详情见:/etc/security/limits.conf,注释
1.core file size
core文件是内存的映像文件,当程序崩溃时,会存储内存的相关信息。主要用于对程序进行调试。
1.查看core文件功能是否打开,0表示未打开,数值大小表示,生成的最大core文件大小,太小会得到一个不完整的core文件
[root@localhost ~]# ulimit -c
0
2.永久设置
echo " * soft core 4194304" >> /etc/security/limits.conf
echo " * hard core 4194304" >> /etc/security/limits.conf
2.data seg size
限制进程使用数据段的大小,一般来说这个限制会影响程序调用brk(系统调用),sbrk(库函数)调用malloc时,如果发现vm不够了,就会用brk去内核申请,一般设置成,unlimited
3.scheduling priority
限制进程优先级,就是进程的nice值,这个值只对普通用户起作用,对root用户不起作用
默认值0,优先级从高到底为,-20到20
4.file size
限制进程产生的文件大小,默认情况不限制,单位是blocks,一个blocks是1024字节
5.pending signals
限制信号,表示可以被挂起/阻塞的最大信号数量,linux下信号有64种,可以通过kill -l查看
编号为1-31的信号为传统unix支持的信号,是不可靠信号(非实时的),
编号为32-64的信号是后来扩充的,称作可靠信号(实时信号)
有兴趣的可以了解下linux信号机制
6.max locked memory
限制内存锁定,这个参数同样也是只对普通用户起作用,对root用户不起作用,linux对内存是分页管理的,内存中的数据,当不再需要时,会被从物理内存交换到swap或磁盘上,有需要时会被交换到物理内存,因为内存的换入/换出有一定的性能损耗,所以有时候会需要将数据锁定到物理内存,比如数据库等,或安全角度考虑的,比如用户名、密码等,被交换到swap或磁盘会有泄密的可能,所以一直锁定再内存中
锁定内存的动作由mlock()函数来完成,mlock原型如下:
int mloc(const void *addr, size_t len);
7.max memory size
限制进程使用的最大内存,驻留内存的限制在很多系统里也没有作用
8.open files
限制进程打开文件的最大数量,默认1024
#永久设置
echo -ne '''
root soft nofile 65535
root hard nofile 65535
*soft nofile 65535
*hard nofile 65535
''' >> /etc/security/limits.conf
9.pipe size
管道的缓存不能改变,只能是8*512(bytes),也就是4096个字节
10.POSIX message queues
可以创建使用POSIX消息队列的最大值
POSIX消息队列是linux ipc中很常用的一种通信方式,它通常用来在不同进程间发送特定格式的消息数据
11.real-time priority
限制程序实时优先级的范围,只针对普通用户
12.stack size
限制进程使用堆栈段的大小,会出现堆栈不够用的情况
13.cpu time
限制程序占用CPU的时间
14.max user processes
限制程序可以fork的进程数,只对普通用户有效,会影响并发
这个参数,默认情况下是根据系统的thread-max来定的
15.virtual memory
限制进程使用虚拟内存的大小
16.file locks
文件锁的限制只在2.4内核之前有用
确保生效
1.添加
vi /etc/pam.d/login
####末尾加入
session required /lib64/security/pam_limits.so
2.检查
ulimit -a
Linux修改资源限制详解相关推荐
- linux 修改用户dir,linux中dir命令详解
在linux系统下dir命令的功能和ls命令差不多,主要是用以查看目录.文件权限等详细信息.下面由学习啦小编整理了linux中dir命令的详细解释,希望对你有帮助. linux中dir命令的详细解释 ...
- 【转】Linux命令工具 top详解
Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不 ...
- linux中top工具,Linux命令工具 top详解
Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不 ...
- Linux下top命令详解
Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...
- linux ps命令使用详解
PS是LINUX下最常用的也是非常强大的进程查看命令 1. ps简介 前面介绍的两个命令都是用于查看当前系统用户的情况,下面就来看看进程的情况,这也是本章的主题. 要对进程进行监测和控制,首先必须要了 ...
- Linux命令工具 top详解
Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似 于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来 ...
- linux signal用法,Linux 信号 signal 用法详解及注意事项
Linux 信号 signal 用法详解及注意事项 1) SIGHUP 本信号在用户终端连接 (正常或非正常) 结束时发出, 通常是在终端的控 制进程结束时, 通知同一 session 内的各个作业, ...
- Linux下使用aMsn详解(转)
Linux下使用aMsn详解(转) amsn这一款在linux下的Msn就不多介绍了,0.95版出来后加入了摄像头,在加上其文件传输功能,你还留恋于gaim么? 经过多天的搜索和尝试,终于在Fedor ...
- linux看不到进程管理,关于Linux下进程的详解【进程查看与管理】
关于Linux下进程的详解[进程查看与管理] 一.关于进程 进程: 已经启动的可执行程序的运行实力 进程的组成:一个进程包含内核中的一部分地址空间和一系列数据结构.其中地址空间是内核标记的一部分内存以 ...
最新文章
- js,jquery获取页面元素距离浏览器工作区顶端的距离
- 后端系统开发之白名单机制
- XidianOJ 1019 自然数的秘密
- 11单件模式(Singleton Pattern)
- P1110 [ZJOI2007]报表统计
- adprw指令通讯案例_实例 | 三菱FX3U485无协议通讯程序详解(含程序)
- linux网卡备份还原,CentOS6.x双网卡采用主-备份策略绑定(bond)
- 多第八田间学校:几何+图论出度+模拟+找到规律
- 图虫知识共享协议_缘之好物 篇二十:关怀父母的另类方案----新礼物:2019图虫影像历...
- 兄弟FAX-2890更换硒鼓加粉清零方法
- 自定义TextView属性和设置TextView属性
- Linux嵌入式开发 -- imx6ull 主频配置
- android 4 时间限制,Android触摸精灵
- Tomcat启动成功,但是访问项目时或者是localhost:8080时出现404
- qq空间网页设计_网页设计中的负空间
- JavaEE架构之传统三层架构,集群架构,分布式架构,微服务架构
- 秒懂 Git 与 Gitee(码云)
- 信息碎片化爆炸时代,我们究竟失去的是什么?
- Python晋级语法
- HTML表单验证(含用户名,密码,邮箱,手机号,验证码-验证)
热门文章
- 茴香豆的“茴”字有三种写法
- JVM异常,参数调试
- 模型与动画——智能巡逻兵
- 零基础DIY四轴飞行器超级详细保姆级教程(STM32F407ZGT6主控、WIFI图传、陀螺仪平衡、气压计/超声波定高、手机蓝牙控制等功能)
- 那一串雪泥鸿爪:诺基亚标志机型回…
- 垃圾自动分拣系统python代码_[HuskyLens]掌控垃圾分拣系统
- +1学姐玩跳棋 (SG函数)
- hbase调用ImportTsv导入csv文件时报错File does not exist
- [Android9.0][GSI][Qualcomm_SDM845]刷完Google GSI包后无法开机
- 背上儿子,带着工作,她敲开了千名贫困绣娘的幸福之门