Linux服务器Crontab定时任务配置

1、检查linux系统是否有crontab

复制代码
rpm -qa | grep crontab

2、如果未安装进行安装

复制代码
yum -y install vixie-cron
yum -y install crontabs

3、crontab启动、停止、运行状态

复制代码
systemctl start crond   启动
systemctl stop crond    停止
systemctl status crond  查看运行状态
systemctl restart crond  重新启动

4、查看crontab下有无定时任务

复制代码
crontab -l 

5、新增定时任务

复制代码
crontab -e

执行命令后输入内容填写任务执行频率、任务脚本:

复制代码
*/1 * * * * sh /task/task.sh >> /task/task.log   # 每分钟执行task.sh 

6、编写Shell任务脚本

复制代码
status=$(curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1/list)
# echo $status >> task.log
success=200 
if (($status == $success));
then
  echo $(date "+%Y-%m-%d %H:%M:%S") ":服务正常" 
  echo $(date "+%Y-%m-%d %H:%M:%S") ":服务正常" >> task.log
fi

if (($status != 200));
then
  echo $(date "+%Y-%m-%d %H:%M:%S") ":服务异常,准备重启..."
  echo $(date "+%Y-%m-%d %H:%M:%S") ":服务异常,准备重启..." >> task.log
  source /001/java2010/reload.sh
fi

7、重启crontab

复制代码
systemctl restart crond

此时任务就在按照编写的频率执行了。可以定时重启系统,定时删除日志,定时检查服务是否正常运行等