动态修改 limit linux,修改程序ulimit限制(不重启应用)

由于线上应用特殊,不能随意重启,找到2种动态修改程序ulimits限制的方法。下面举例修改nginx的core file大小限制

方法一:prlimit工具修改

#安装新版本的util-linux,由于util-linux版本需要大于等于2.21以上才支持prlimit命令(如果系统有此命令请忽略安装步骤)。

cd /usr/local/src

wget https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.27/util-linux-2.27.1.tar.gz

tar -zxvf util-linux-2.27.1.tar.gz

cd util-linux-2.27.1

./configure --prefix=/usr/share/doc/util-linux-2.27

make && make install

cd /usr/share/doc/util-linux-2.27/bin && cp prlimit /usr/bin/

#找出nginx进程

root@VM-131-5-ubuntu:/etc/security# ps -ef |grep nginx |grep -v grep

root 6034 1 0 17:16 ? 00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf

nginx 6037 6034 0 17:16 ? 00:00:00 nginx: worker process

#找到进程的core文件大小限制

root@VM-131-5-ubuntu:/etc/security# cat /proc/6034/limits |grep core

Max core file size 0 unlimited bytes

#使用prlimit命令修改core文件大小限制

root@VM-131-5-ubuntu:/etc/security# prlimit -p 6034 --core=unlimited:

#再次查看该nginx进程的core文件大小限制

root@VM-131-5-ubuntu:/etc/security# cat /proc/6034/limits |grep core

Max core file size unlimited unlimited bytes

方法二:python3+ resource模块

#找出nginx进程

root@VM-131-5-ubuntu:/etc/security# ps -ef |grep nginx |grep -v grep

root 16436 1 0 13:01 ? 00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf

nginx 16439 16436 0 13:01 ? 00:00:00 nginx: worker process

#找到进程的core文件大小限制

root@VM-131-5-ubuntu:/etc/security# cat /proc/16436/limits |grep core

Max core file size 0 unlimited bytes

#利用python3 resource模块修改core文件大小限制

root@VM-131-5-ubuntu:/etc/security# python3

Python 3.4.3 (default, Nov 12 2018, 22:25:49)

[GCC 4.8.4] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> import resource

>>> resource.prlimit(16436,resource.RLIMIT_CORE,(-1,-1))

(0, -1)

>>> exit()

#再次查看该nginx进程的core文件大小限制

root@VM-131-5-ubuntu:/etc/security# cat /proc/16436/limits |grep core

Max core file size unlimited unlimited bytes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值