Java Can';t在redhat中启动tomcat作为服务
我是Linux新手,但花了一整天的时间安装了Java和Tomcat。我的目标是用这个Linux设备来托管一个应用程序。我知道在我基于windows的机器上一切都很好,但它是我的笔记本电脑,所以我计划使用Linux机箱作为我的专用服务器 在本教程中,我执行了以下命令:Java Can';t在redhat中启动tomcat作为服务,java,linux,tomcat,service,Java,Linux,Tomcat,Service,我是Linux新手,但花了一整天的时间安装了Java和Tomcat。我的目标是用这个Linux设备来托管一个应用程序。我知道在我基于windows的机器上一切都很好,但它是我的笔记本电脑,所以我计划使用Linux机箱作为我的专用服务器 在本教程中,我执行了以下命令: cd /etc/init.d vi tomcat #!/bin/bash # description: Tomcat Start Stop Restart # processname: tomcat # chkcon
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
执行此命令后,tomcat在端口8082处启动。但是当我重新启动电脑时,tomcat并没有随着电脑的启动而启动
我该怎么做 尝试改用此命令:
sudo systemctl enable tomcat
由于您使用的是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
请告诉我的脚本/过程中有什么错误。请尝试chkconfig sudo/sbin/chkconfig--add tomcat sudo/sbin/chkconfig--list tomcat sudo/sbin/chkconfig tomcat onNote:将请求转发到“systemctl enable tomcat.service”。未能发出方法调用:错误消息