第一种方法,将tomcat的启动批处理文件配置在linux开机启动文件中
-----------------------------亲测有效!---------------------------------------------
第一步,进入rc.d目录,这个目录下有一个rc.local的文件,就相当于windows的启动文件夹
第二步,用vim rc.local打开该文件
第三步,添加上图两行内容,第一行是你的jdk安装目录,第二行是启动tomcat命令,:wq保存退出,这样每次重启就可以自动启动tomcat了,测试成功。
第二种方法,将tomcat服务添加到系统服务中,并设置成开机自动启动
第一步,在/etc/init.d目录中创建tomcat文件,也可以取别的名字,笔者命名为tomcat,以后的服务名就是tomcat
第二步,在tomcat文件中添加以下内容
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
. /etc/init.d/functions
# source networking configuration.
. /etc/sysconfig/network
RETVAL=0
export JAVA_HOME=/usr/local/java/jdk1.8.0_171
export CATALINA_HOME=/usr/local/tomcat-9/apache-tomcat-9.0.8
export CATALINA_BASE=/usr/local/tomcat-9/apache-tomcat-9.0.8
start()
{
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
RETVAL=$?
echo " OK"
return $RETVAL
fi
}
stop()
{
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
sleep 1
ps -fwwu tomcat | grep apache-tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
echo " OK"
# [ $RETVAL -eq 0 ] && rm -f /var/lock/...
return $RETVAL
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo $"Restaring Tomcat"
$0 stop
sleep 1
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit $RETVAL
红框内改成自己的jdk路径和tomcat路径
第三步,修改文件的执行权限,使用命令chmod 777 tomcat
把该文件挂载到rc上,启动rc*.d中*多少表明优先级0最优先,为了顺利自启动可适当将优先级下降bash
ln -s /etc/init.d/tomcat /etc/rc3.d/S16Tomcat
第四步,其实到第三步,服务已经配置成功,只要使用service tomcat start/stop/restart就可以启动、关闭、重启tomcat了。
现在将其添加到系统服务,使用命令:
chkconfig --add tomcat
chkconfig tomcat on
然后使用chkconfig --list查看服务是否添加成功
至此,linux环境下配置tomcat开机自动启动就成功了。重启后会发现tomcat已自动启动。
但是,如果你又不想让它自动启动了,可以使用chkconfig tomcat on/off切换开机启动关闭
而且,为增加系统稳定性,建议使用第二种方法添加开机启动。
----
在执行#service tomcat start命令时报错:
env: /etc/init.d/tomcat: Permission denied
解决办法:
在/etc/init.d目录下执行以下命令
#chmod a+x tomcat
"env: /etc/init.d/tomcat: No such file or directory)" rest
这是为甚呢,由于你在windows下保存了该脚本文件,其中的换行符被改变了,windows中换行符为/r/ncode
而linux中是/n 因此这边须要把脚本作个转换,咱们使用dos2unix,通常你们可能都没装该工具,好人作到底,送福送到西 安装其实很简单
yum install dos2unix
安装完成后直接执行既可
dos2unix /etc/init.d/tomcat
再使用service tomcat start 就没问题啦
顺便再提一句 /etc/init.d/tomcat 和 /etc/rc.d/init.d/tomcat 是同一个东西!