linux进程监控与自动重启的简单实现方法
目的:
linux下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能。
实现原理:
由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重启并写入日志。
crontab修改
#crontab-e */5****/mnt/bindmonitor.sh
/mnt/bindmonitor.sh的实现
#!/bin/sh
host_dir=`echo~`#当前用户根目录
proc_name="/home/wkubuntu/named/sbin/named"#进程名
file_name="/mnt/bindmonitor.log"#日志文件
pid=0
proc_num()#计算进程数
{
num=`ps-ef|grep$proc_name|grep-vgrep|wc-l`
return$num
}
proc_id()#进程号
{
pid=`ps-ef|grep$proc_name|grep-vgrep|awk'{print$2}'`
}
proc_num
number=$?
if[$number-eq0]#判断进程是否存在
then
/home/wkubuntu/named/sbin/named-c/home/wkubuntu/named/etc/named.conf-n1&
#重启进程的命令,请相应修改
proc_id#获取新进程号
echo${pid},`date`>>$file_name#将新进程号和重启时间记录
fi
删除进程测试
a.#killall-15named
b.5分钟后,cat/mnt/bindmonitor.log看看有无最新的记录,进程号与#ps-ef|grepnamed进程号对应。
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短