IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

一个监测服务器swap并重启php的脚本

废墟 2011-09-19 23:45:00 累计浏览 3,311 次
本机暂存
有一台服务器老是交换扇区占满然后失去响应,很烦,因为加载了以前别人写的一个php扩展,效率低,资源占用大,悲剧的是现在还没有可以替换的东西。
折中一下,写个脚本监控swap吧,放在crontab里面,2小时执行一次,世界安静了,再也没有烦人的报警短信了

if /etc/init.d/php5-fpm restart|grep -c fail
这一句中间的命令换成你自己的即可

#!/bin/bash
function usage
{
        echo "Usage: $0"
        echo "e.g. $0 1500"
        exit
}

if [ $# -lt 1 ];then
        usage
fi

typeset -i nowSwap limitSwap

limitSwap=$1
nowSwap=$(free -m|grep "Swap"|sed -e "s/\(.*\)\:\(.*\)/\2/g"|awk '{print $2}')

if [ $limitSwap -lt $nowSwap ];then
        while [ 1 ]
        do
                if /etc/init.d/php5-fpm restart|grep -c fail
                then echo "[$(date +%Y/%m/%d0-%H:%M)]restart php failed"
                else
                        echo "[$(date +%Y/%m/%d-%H:%M)]restart php successful!"
                        break
                fi
        done
fi

同分类推荐文章

  1. 从零重建 macOS 开发机:可复现的环境初始化流程 (2026-06-14 20:36:00)
  2. 百度物理网络监控工具开源第二弹:毫秒级监控工具 baize,让你的网络问题无处遁形 (2026-06-11 08:10:28)
  3. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)

查看更多 DevOps 文章 →

建议继续学习

  1. Bash的模式和配置文件加载 (累计阅读 24,405)
  2. WEB系统需要关注的一些点 (累计阅读 18,218)
  3. 28个Unix/Linux的命令行神器 (累计阅读 16,789)
  4. 批量添加主机到cacti+nagios的监控报警系统中 (累计阅读 14,990)
  5. 我常用的主机监控shell脚本 (累计阅读 13,429)
  6. 100个常用的linux命令 (累计阅读 11,604)
  7. Linux命令行里的“瑞士军刀” (累计阅读 11,584)
  8. 每个程序员都应该知道的8个Linux命令 (累计阅读 10,742)
  9. 最受欢迎的10个 Linux 单行命令 (累计阅读 10,129)
  10. linux下搜索find命令详解 (累计阅读 9,456)