设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 345|回复: 0

linux一条命令获取free剩余内存大小,sh监控脚本,使用计划任务自动监控进程是否内存不足然后重启恢复

[复制链接]
 成长值: 336

签到天数: 4737 天

[LV.Master]伴坛终老

发表于 2024/9/26 21:16 | 显示全部楼层 |阅读模式 |Google Chrome 129.0.0.0|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
linux一条命令获取free剩余内存大小,sh监控脚本,使用计划任务自动监控进程是否内存不足然后重启恢复

获取free值,单位MB
  1. vmstat -SM | awk '{print $4}' | awk 'NR==3'
复制代码


检测内存不足125MB则运行命令,使用计划任务来每分钟运行一次命令
运行crontab -e
  1. * * * * * [ $(vmstat -SM | awk 'NR==3 {print $4}') -lt 125 ] && { killall -9 opentracker;sleep 3;cd /home/OpenTracker-master;cd opentracker;./opentracker -f opentracker.conf.sample -p 8080 -P 8080 -p 6961 -P 6961 -p 2710 -P 2710 &}
复制代码


取不到used字段,不然效果比free可能更精准
早期的帖子,可以代替之前的pidof判断oom杀进程,毕竟触发oom的之前几分钟因为内存不足都无法新建tcp连接,ssh都上不去
https://bbs.itzmx.com/thread-105494-1-1.html

帖子补充
找到更好的真实内存获取方案啦,比free更精准
  1. * * * * * [ $(awk '/MemFree/ {free=$2} /Buffers/ {buffers=$2} /^Cached/ {cached=$2} END {print free + buffers + cached}' /proc/meminfo) -lt 125000 ] && { killall -9 opentracker;sleep 3;cd /home/OpenTracker-master;cd opentracker;./opentracker -f opentracker.conf.sample -p 8080 -P 8080 -p 6961 -P 6961 -p 2710 -P 2710 &}
复制代码


评分

参与人数 1樱币 +2 收起 理由
algoblue + 2 很给力!

查看全部评分

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/12/23 07:51 , Processed in 0.103768 second(s), 21 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表