ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux环境nginx每天自动重启:crontab

2021-12-27 13:05:19  阅读:277  来源: 互联网

标签:crontab echo nginx running && linux PROG PIDFILE


1.新建reload.sh文件

#!/bin/bash
# chkconfig: - 85 15
NGINX="/home/account/nginx-1.20.1/sbin/nginx"
PROG=$(basename $NGINX)
PIDFILE="/home/account/nginx-1.20.1/logs/nginx.pid"
CONF="/home/account/nginx-1.20.1/conf/nginx.conf"
case "$1" in
    start)
        if [ -f $$PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed."
        else
                echo "Starting $PROG..."
                $NGINX -c $CONF
                [ $? -eq 0 ] && touch ${LOCKFILE} sleep 4 && touch ${PIDFILE}
                echo "Done"
        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running."
        else
                echo "Stopping $PROG..."
                killall -s QUIT $PROG
                [ $? -eq 0 ] && rm -f ${LOCKFILE} ${PIDFILE}
                sleep 1
                echo "Done"
        fi
        ;;
    status)
        if [ ! -f $PIDFILE ]
        then
            echo "Nginx is not running now!"
        else
            echo "Nginx is running now!"
        fi
        ;;
    restart)
      if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running."
        else
                echo "Stopping $PROG..."
                killall -s QUIT $PROG
                [ $? -eq 0 ] && rm -f ${LOCKFILE} ${PIDFILE}
                sleep 1
                echo "Done"
        fi
        
        
        
         if [ -f $$PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed."
        else
                echo "Starting $PROG..."
                $NGINX -c $CONF
                [ $? -eq 0 ] && touch ${LOCKFILE} sleep 4 && touch ${PIDFILE}
                echo "Done"
        fi
        ;;
    reload)
        echo "Reloading $PROG..."
        killall -s HUP $PROG
        ;;
    *)
        echo "Usage: {start|stop|status|restart|reload}"
        exit 2
        ;;
esac
赋予权限 
chmod 777 reload.sh
替换空格命令
sed -i 's/\r$//' reload.sh
linux下运行命令 crontab -e 
执行 00 08 * * *  sh /home/account/nginx-1.20.1/reload.sh restart
保存退出   :wq
每天8点自动执行重启脚本

 

标签:crontab,echo,nginx,running,&&,linux,PROG,PIDFILE
来源: https://www.cnblogs.com/pijunqi/p/15735823.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有