centos7设置定时任务重启tomcat

Posted sumling

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7设置定时任务重启tomcat相关的知识,希望对你有一定的参考价值。

1、确认crontab是否安装

crontab -l
//返回no crontab for root,表示已安装

2、生成重启tomcat文件

vim tomcatStart.sh
#!/bin/bash
/etc/profile
echo $JAVA_HOME
#这里取jdk路径
export JAVA_HOME=/usr/java/jdk1.8.0_191
#这里取tomcat路径
tomcatPath="/data2/webapp/apache-tomcat-8.5.78-gspws"
binPath="$tomcatPath/bin"
echo "[info][$(date)]....tomcat.....$tomcatPath"
SHUTDOWN=$binPath"/shutdown.sh"
STARTTOMCAT=$binPath"/startup.sh"
echo "[info][$(date)]....shutdown...."
$SHUTDOWN
sleep 2
pid=`ps -ef | grep tomcat | grep -w $tomcatPath | grep -v \'grep\' | awk \'print $2\'`
if [ -n "$pid" ]; then
echo "[info][$(date)]..shutdown.......kill $pid.."
kill -9 $pid;
echo "[info][$(date)]kill $pid...."
fi
echo "[info][$(date)]10..........$tomcatPath.tomcat"
sleep 10
$STARTTOMCAT

3、给启动文件授权

sudo chmod 777 tomcatStart.sh

4、创建定时任务

crontab -e
// 第一个是 tomcatStart.sh 的路径, 第二个是将日志输出到某个文件中
*/2 * * * * /home/tomcat/tomcatStart.sh >> /home/tomcat/tomcatLog.txt

 

 

5、重启定时服务

systemctl restart crond
#重启后通过
crontab -l 可以查询到定时任务
 

 

centos 执行定时任务

参考技术A yum -y update
yum -y install cronie yum-cron
//-------------------
crontab任务配置基本格式:

b、重启crond
systemctl reload crond
systemctl restart crond

c、查看当前用户定时任务
crontab -l

d、通过日志查看是否生效
tail -f /logs/cron-cc.log
//---------------------

crontab设置的最小时间为每分钟,实现以秒为单位进行定时任务执行。
*/1 * * * * sh /root/shell/aa.sh
*/1 * * * * sleep 10 && sh /root/shell/aa.sh
*/1 * * * * sleep 20 && sh /root/shell/aa.sh
*/1 * * * * sleep 30 && sh /root/shell/aa.sh
*/1 * * * * sleep 40 && sh /root/shell/aa.sh
*/1 * * * * sleep 50 && sh /root/shell/aa.sh
注意:aa.sh为执行脚本

*/1 * * * * sh /root/shell/aa.sh
*/1 * * * * sleep 20 && sh /root/shell/aa.sh
*/1 * * * * sleep 40 && sh /root/shell/aa.sh
注意:aa.sh为执行脚本

*/5 * * * * sh /root/shell/echo.sh

// 每天凌晨1点执行
0 1 * * * /home/testuser/test.sh
//-----------------------------------------------

crontab -l
调用/var/spool/cron/目录下相关用户的定时任务信息

查看定时任务日志
tail -f /var/log/cron

systemctl status crond.service
systemctl start crond.service
systemctl stop crond.service
systemctl restart crond.service
systemctl reload crond.service

把cron服务加入linux开机自启动
systemctl enable crond.service
systemctl is-enabled crond.service

ps -ef |grep crond|grep -v grep
//---------------------------------------------
注意:
路径问题
有些脚本涉及到文件操作,文件路径不正确也会导致脚本无法正常执行,建议使用绝对路径,或者在执行脚本时,先进入该脚本的路径下,在执行。Crontab的command配置如下:
*/1 * * * * cd /root/shell && ./cron.sh

1、执行env指令得到当前的用户环境变量。

2、将PATH环境变量添加到crontab的第一行,如下图所示。

以上是关于centos7设置定时任务重启tomcat的主要内容,如果未能解决你的问题,请参考以下文章

Linux 定时重启tomcat及配置定时任务详解

懂Linux 进,CentOS7.3设置定时重启的命令是啥??

CentOS7定时任务删除Tomcat日志信息

如何设置tomcat定时自动重启

Linux每天定时重启Tomcat服务

centos7 ubuntu crontab定时任务