首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >linux tomcat服务启动(windows7设置定时重启)

linux tomcat服务启动(windows7设置定时重启)

作者头像
全栈程序员站长
发布2022-07-28 19:19:19
发布2022-07-28 19:19:19
10.1K0
举报

大家好,又见面了,我是你们的朋友全栈君。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)

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128906.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档