我是Linux的新手,但我花了一整天时间安装了Java和Tomcat。我的目标是使用这个Linux机器托管应用程序。我知道这一切都可以从我的基于Windows的机器上运行良好,但它是我的笔记本电脑,所以我打算使用Linux Box作为我的专用服务器。
I am following this tutorial .在本教程中,我执行了以下命令:
cd /etc/init.d
vi tomcat
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.7.0_05
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/usr/share/apache-tomcat-7.0.29
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
chmod 755 tomcat
chkconfig --add tomcat
chkconfig --level 234 tomcat on
chkconfig --list tomcat
service tomcat start
执行此命令后,将在端口8082启动tomcat。但是当我重新启动pc时,tomcat没有启动PC启动。
我该怎么做?
答案 0 :(得分:1)
由于您使用Red Hat,因此可以使用systemd
进行服务。
创建文件/etc/systemd/system/tomcat.service
:
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/java/jdk1.7.0_05
Environment=CATALINA_PID=/usr/share/apache-tomcat-7.0.29/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/share/apache-tomcat-7.0.29
Environment=CATALINA_BASE=/usr/share/apache-tomcat-7.0.29
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Duser.timezone=UTC -Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/usr/share/apache-tomcat-7.0.29/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target
我指定在启用syslog
和network
后启动脚本。
我们可以看到systemd将tomcat作为守护进程处理并杀死了PID。
使用User
和Group
,我们指定用户和应该运行该流程的组
Systemd将处理upstart
进程并使用PID终止它。
要启用它,请发出:
systemctl enable tomcat
systemctl start tomcat
答案 1 :(得分:0)
尝试使用此命令:
sudo systemctl enable tomcat