1、在crontab里定时运行脚本,脚本名称和路径里不要包含被守护的进程名,否则在判断进程数的时候会比预想的多。另外,最好使用“ps
-ef|grep -w”而不是“ps -ef|grep ”, -w 是整字匹配。
2、进程挂掉之后再拉起用到了nohup,需要在脚本前加一句“source ~/.bash_profile”。碰到两个地方的服务器没加这一句导致nohup失效。可能nohup对环境变量有要求。
以下是我部署在一台服务器上的守护脚本:
crontab: 脚本:
2、进程挂掉之后再拉起用到了nohup,需要在脚本前加一句“source ~/.bash_profile”。碰到两个地方的服务器没加这一句导致nohup失效。可能nohup对环境变量有要求。
以下是我部署在一台服务器上的守护脚本:
crontab: 脚本:
moniter@126.com仅是举例,非真实邮箱。有些邮箱不能作为邮件告警的接收邮箱,126邮箱可以,可能是sendmail所发邮件格式不够规范导致的吧,没仔细研究。