1:查看crond 服务状态(确认Linux任务计划服务开启)

service crond status

crond (pid  1937) is running...

2:编写重启Tomcat的sh可执行文件restart_tomcat.sh

#!/bin/sh

#./etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_112

sh  /opt/apache-tomcat-9.0.0.M11/bin/shutdown.sh

sleep 60s

sh  /opt/apache-tomcat-9.0.0.M11/bin/startup.sh

3:手动测试文件是否可以执行

[root@UCOM002 bin]# ./restart_tomcat.sh

-bash: ./restart_tomcat.sh: /bin/sh^M: bad interpreter: No such file or directory

上面报错是因为restart_tomcat.sh是在window系统下直接创建的,需要修改文件的格式

为Linux系统的格式,依次执行下面的命令:

---------------------------------------------------------------------------------------------------------

给文件赋权限

chmod 777 restart_tomcat.sh

然后修改文件格式 
vi restart_tomcat.sh 
利用如下命令查看文件格式 
:set ff 或 :set fileformat 
可以看到如下信息 
fileformat=dos 或 fileformat=unix 
利用如下命令修改文件格式 
:set ff=unix 或 :set fileformat=unix 
保存退出
:wq

执行完上面的操作,再次执行发现执行OK

[root@UCOM002 bin]# ./restart_tomcat.sh

Using CATALINA_BASE:   /opt/apache-tomcat-9.0.0.M11

Using CATALINA_HOME:   /opt/apache-tomcat-9.0.0.M11

Using CATALINA_TMPDIR: /opt/apache-tomcat-9.0.0.M11/temp

Using JRE_HOME:        /usr/java/jdk1.8.0_112

Using CLASSPATH:      
/opt/apache-tomcat-9.0.0.M11/bin/bootstrap.jar:/opt/apache-tomcat-9.0.0.M11/bin/tomcat-juli.jar

Using CATALINA_BASE:   /opt/apache-tomcat-9.0.0.M11

Using CATALINA_HOME:   /opt/apache-tomcat-9.0.0.M11

Using CATALINA_TMPDIR:
/opt/apache-tomcat-9.0.0.M11/temp

Using JRE_HOME:        /usr/java/jdk1.8.0_112

Using CLASSPATH:      
/opt/apache-tomcat-9.0.0.M11/bin/bootstrap.jar:/opt/apache-tomcat-9.0.0.M11/bin/tomcat-juli.jar

Tomcat started.

4:添加Crontab任务计划

[root@UCOM002 bin]# crontab -e

0 1 * * *  
/opt/apache-tomcat-9.0.0.M11/bin/restart_tomcat.sh

每天凌晨1点执行指定路径下的restart_tomcat.sh文件

5:crontab任务不执行,手工执行文件可以

问题描述:默认是root用户登录

sh文件写法是

-------------------------------------------------------

#!/bin/sh
./etc/profile
sh /opt/apache-tomcat-9.0.0.M11/bin/shutdown.sh
sleep 120s
sh /opt/apache-tomcat-9.0.0.M11/bin/startup.sh

----------------------------------------------------

结果还是不执行

于是从根目录/切换到root用户目录~,查看环境变量文件

[root@UCOM002 /]# su - root
[root@UCOM002 ~]# cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
[root@UCOM002 ~]#

发现export PATH下面没有定义环境变量信息,导致root用户没有环境变量信息,所以

在root用户下面执行./etc/profile无效

于是在export PATH 下面添加两行,完整文件如下

[root@UCOM002 /]# su - root
[root@UCOM002 ~]# cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
export JAVA_HOME=/usr/java/jdk1.8.0_112
export CATALINA_HOME=/opt/apache-tomcat-9.0.0.M11
然后保存root用户下对.bash_profile文件的修改退出,再次编辑crontab 任务

最好是重启crond服务,给一个任意时间,计划被执行

* 1 * * *  /restart_test.sh

查看crond记录

[root@UCOM002 ~]# tail -f /var/log/cron
Dec 2 14:01:01 UCOM002 run-parts(/etc/cron.hourly)[791]: finished 0anacron
Dec 2 14:01:01 UCOM002 run-parts(/etc/cron.hourly)[782]: starting mcelog.cron
Dec 2 14:01:01 UCOM002 run-parts(/etc/cron.hourly)[805]: finished mcelog.cron
Dec 2 14:10:01 UCOM002 CROND[822]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Dec 2 14:12:57 UCOM002 crontab[855]: (root) BEGIN EDIT (root)
Dec 2 14:13:29 UCOM002 crontab[855]: (root) REPLACE (root)
Dec 2 14:13:29 UCOM002 crontab[855]: (root) END EDIT (root)
Dec 2 14:13:32 UCOM002 crontab[859]: (root) LIST (root)
Dec 2 14:14:01 UCOM002 crond[6671]: (root) RELOAD (/var/spool/cron/root)
Dec 2 14:14:01 UCOM002 CROND[870]: (root) CMD (/restart_test.sh)

Linux每天定时重启Tomcat服务的更多相关文章

  1. linux定时重启tomcat服务的脚本学习

    要求:在linux中定时重启一个tomcat服务 一:shell脚本即Shell Script [1],Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便 ...

  2. 【linux】【tomcat】linux下定时重启tomcat

    步骤: 一.创建脚本文件,本脚本文件用于停止,重启tomcat运行的java进程,并设置脚本文件权限 1.新建脚本文件tomcat.sh [注意文件创建的路径] [查看当前路径的命令:   pwd] ...

  3. 【linux】【tomcat】linux下定时重启tomcat 【CentOS 6.4】【CentOS 7.6】

    本章内容以CentOS 6.4   和   CentOS  7.6  两个版本为例.[6和7的命令不同] 转载 :https://www.cnblogs.com/sxdcgaq8080/p/10730 ...

  4. linux下定时重启tomcat

    工具/原料 linux tomcat 方法/步骤 编写tomcat_shutdown.sh: #!/bin/sh export JAVA_HOME=/home/oracle/jdk1..0_67/ e ...

  5. linux系统定时重启tomcat

    #touch auto-start.sh [root@Linux opt]# echo $LANGen_US.UTF-8 #vim auto-start.sh #!/bin/sh export LAN ...

  6. 使用shell脚本定时重启tomcat服务

    #!/bin/bash DATE=`date +%Y-%m-%d-%H-%M-%S` echo "当前时间是:$DATE" # 根据端口号查找进程 PID=`/usr/sbin/l ...

  7. Linux 定时重启 Tomcat、重启Keepalived

    1.在 tomcat 目录新建一个.sh 文件: vi restartTomcat.sh 2.输入内容: #!/bin/bash# author: Linnuo # date: -- # Filena ...

  8. 重启部署在Linux系统下的tomcat服务

    重启部署在Linux系统下的tomcat服务具体的操作步骤: 1.在Winscp上建立连接,输入用户和密码,这个密码一般是看不到的: 2.查看服务:ps -ef  |  gerp  Java  注意在 ...

  9. 【树莓派】crontab设置Linux设备定时重启

    简介:设置Linux设备定时重启或者关机 问题:有台设备每天总需要使用的人手动重启一下才可以正常工作,但是检查了日志,看起来服务一切都正常.时间和正确时间相差4mins. 解决办法: 1.增加定时任务 ...

随机推荐

  1. js-DOM-页面元素的兼容性、常用事件、节点

    页面元素的兼容性: 所谓的兼容性指的就是当前浏览器是否支持当前对象的属性或是方法,如果支持就是兼容,如果不支持就是不兼容. 举个例子: /** * 设置页面标签之间的文本内容的兼容性写法 * @par ...

  2. div中嵌套div水平垂直居中

    div中嵌套一个居中的div有很多方法,如果不想调整边距,有一个简单的方法: <div align="center" style="width: 200px;hei ...

  3. 2.Unable to instantiate Action, templateAction, defined for 'template_list' in namespace '/'templateAction

    1.错误说没有命名空间'templateAction,但是在struts里写了这个,名字跟Action的名字是一样的,为什么会报这个错误 2.反复检查路径和名字,都没有问题 3.发现没有对其进行注入操 ...

  4. Oracle数据库11g基于rehl6.5的配置与安装

    REDHAT6.5安装oracle11.2.4 ORACLE11G R2官档网址: http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc ...

  5. python学习笔记:Day01

    一.python 简介 1.  python是Guido van Rossum在1989年圣诞节期间,为了打发无聊的假期而编写的一个编程语言   2.  pyhton主要应用于数据分析.组件集成.网络 ...

  6. PHP微信墙制作,开源

    PHP微信墙制作 微信墙 PHP 注意:由于微信官网不定时会更新,其中模拟登陆以及爬取数据的方式可能会失效,最近这12个月里,就有两次更新导致此功能需要重写. 服务端源码->github地址传送 ...

  7. [BTS] Deploy Command

    BizTalkDeploymentTools.AddResource.bat @Echo OFF SET ApplicationName=%~1 SET ComponentType=%~2 SET C ...

  8. mysql 密码重置

    1.停止mysql服务(以管理员身份,在cmd命令行下运行) net stop mysql 2.使用命令启动mysql数据库,跳过权限验证 mysqld -nt --skip-grant-tables ...

  9. 常用dom对象

    DOM:文档对象模型 --树模型 文档:标签文档,对象:文档中每个元素对象,模型:抽象化的东西 一:window: window.shuxing; 属性(值或者子对象): opener:打开当前窗口的 ...

  10. webView文本长按显示英文

    webView文本长按显示英文时,在info.plist文件中添加如下内容: <key>CFBundleLocalizations</key> <array> &l ...