通过cron创建mongod服务守护
1、创建mongod守护脚本:
1 vim mongo-monitor.sh 2 3 #!/bin/sh 4 proc_name="mongod" # 进程名 5 6 proc_num(){ # 查询进程数 7 num=$(ps -ef| grep $proc_name | grep -v grep | wc -l) 8 return $num 9 } 10 11 proc_num 12 numbers=$? # 获取进程数 13 if [ $numbers -eq 0 ] # 如进程数为0 14 then 15 # systemclt start mongod # 启动服务 启动服务过程中发现systemctl无法启动成功,而使用/usr/bin/mongod -f /etc/mongod.conf 一般脚本方式可以启动成功,因此可改成如下 16 /usr/bin/mongod -f /etc/mongod.conf 17 fi
脚本中,通过ps命令查询mongod服务是否存在,不存在,则进行启动。
2、向crontab加入一个新任务
1 sudo crontab -e # 进入编辑状态,选用vi编辑 2 3 # 每10分钟,检测mongod服务是否存在 */10 * * * * sh /usr/local/greencar-mongo/mongo-monitor.sh
3、查看任务
crontab -l
4、查看执行日志
tail /var/log/cron
如果不想写入日志,可在任务中的命令加入:>/dev/null 2>&1
*/10 * * * * sh /usr/local/greencar-mongo/mongo-monitor.sh >/dev/null 2>&1
5、修改任务
可通过:vim /var/spool/cron/用户名 修改任务
vim /var/spool/cron/root # 检测mongod服务是否存在 */30 * * * * sh /usr/local/greencar-mongo/mongo-monitor.sh