Linux每天定时重启Tomcat服务
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服务的更多相关文章
- linux定时重启tomcat服务的脚本学习
要求:在linux中定时重启一个tomcat服务 一:shell脚本即Shell Script [1],Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便 ...
- 【linux】【tomcat】linux下定时重启tomcat
步骤: 一.创建脚本文件,本脚本文件用于停止,重启tomcat运行的java进程,并设置脚本文件权限 1.新建脚本文件tomcat.sh [注意文件创建的路径] [查看当前路径的命令: pwd] ...
- 【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 ...
- linux下定时重启tomcat
工具/原料 linux tomcat 方法/步骤 编写tomcat_shutdown.sh: #!/bin/sh export JAVA_HOME=/home/oracle/jdk1..0_67/ e ...
- linux系统定时重启tomcat
#touch auto-start.sh [root@Linux opt]# echo $LANGen_US.UTF-8 #vim auto-start.sh #!/bin/sh export LAN ...
- 使用shell脚本定时重启tomcat服务
#!/bin/bash DATE=`date +%Y-%m-%d-%H-%M-%S` echo "当前时间是:$DATE" # 根据端口号查找进程 PID=`/usr/sbin/l ...
- Linux 定时重启 Tomcat、重启Keepalived
1.在 tomcat 目录新建一个.sh 文件: vi restartTomcat.sh 2.输入内容: #!/bin/bash# author: Linnuo # date: -- # Filena ...
- 重启部署在Linux系统下的tomcat服务
重启部署在Linux系统下的tomcat服务具体的操作步骤: 1.在Winscp上建立连接,输入用户和密码,这个密码一般是看不到的: 2.查看服务:ps -ef | gerp Java 注意在 ...
- 【树莓派】crontab设置Linux设备定时重启
简介:设置Linux设备定时重启或者关机 问题:有台设备每天总需要使用的人手动重启一下才可以正常工作,但是检查了日志,看起来服务一切都正常.时间和正确时间相差4mins. 解决办法: 1.增加定时任务 ...
随机推荐
- [转] 基于ArcGISServer实现活动地图标注
——王嘉彬(Esri中国上海分公司) 1.背景 1.1.主流互联网地图应用的现状 在目前主流的互联网地图应用中,如 Google Map(图 1).搜狗地图(图2),POI 兴趣点的文字标注越来越多的 ...
- PHP程序员的技术成长规划(转)
第一阶段:基础阶段(基础PHP程序员) 重点:把LNMP搞熟练(核心是安装配置基本操作) 目标:能够完成基本的LNMP系统安装,简单配置维护:能够做基本的简单系统的PHP开发:能够在PHP中型系统中支 ...
- ubuntu 安装pyqt4 eric
tar xvf eric4-4.5.7.tar.gztar xvf eric4-i18n-zh_CN.GB2312-4.5.7.tar.gzcd eric4-4.5.7/python install. ...
- Android--入门
之前自己在学校写过一些安卓应用,那时候没有系统地学过安卓,用到什么就网上找博客.找Demo,然后自己跟着敲一遍,有些东西也不太理解,现在打算做android开发这一块了,趁毕业之前赶紧多学些技术.先是 ...
- jquery 编码解码
中文转Unicode:HttpUtility.UrlEncodeUnicode(string str); 转换后中文格式:"%uxxxx" 举例:"柳_abc123&qu ...
- 递归获取XML元素
看到的一道题,用递归获取XML元素.... static void Main(string[] args) { string xmlContent = @"<FileSystem> ...
- 【转载】我也说 IEnumerable,ICollection,IList,List之间的区别
做C#的同学们,都知道,一类只能有一个继承类,但可以实现多个接口.这句话就告诉我们:IEnumerable,ICollection,IList,List区别了 首先我看看 IEnumerable: / ...
- Mac OS X Yosemite安装盘U盘制作
从App Store下载Mac OS X Yosemite安装程序,下载后的安装文件保存在应用程序(/Applications)文件夹中.请注意,此时一定不要直接启动该程序安装 OS X Yosemi ...
- EmberJs之3W
写在前面 最近比较忙,换了新工作还要学习很多全新的技术栈,并给自己找了很多借口来不去坚持写博客.常常具有讽刺意味的是,更多剩下的时间并没有利用而更多的是白白浪费,也许这就是青春吧,挥霍吧,这不是我想要 ...
- HighCharts之2D柱状图
1.HighCharts之2D柱状图源码 column.html: <!DOCTYPE html> <html> <head> <meta charset=& ...