0
点赞
收藏
分享

微信扫一扫

Centos7下使用systemctl管理tomcat9

J简文 2023-05-06 阅读 34

这里是使用systemctl管理tomcat9的步骤:

1. 编写tomcat9.service文件:

[Unit]
Description=Apache Tomcat 9
After=syslog.target network.target

[Service]
Type=forking

ExecStart=/usr/share/tomcat9/bin/startup.sh
ExecStop=/usr/share/tomcat9/bin/shutdown.sh

User=tomcat
Group=tomcat

[Install]
WantedBy=multi-user.target

2. 将tomcat9.service文件放入/etc/systemd/system目录:

sudo mv tomcat9.service /etc/systemd/system/

3. 重载systemctl daemon,让其识别tomcat9.service文件:

sudo systemctl daemon-reload

4. 启动Tomcat服务:

sudo systemctl start tomcat9

5. 检查Tomcat服务状态:

sudo systemctl status tomcat9

6. 设置Tomcat服务开机启动:

sudo systemctl enable tomcat9

7. 停止Tomcat服务:

sudo systemctl stop tomcat9

8. 重新启动Tomcat服务:

sudo systemctl restart tomcat9

9. 禁用Tomcat服务开机启动:

sudo systemctl disable tomcat9

以上就是使用systemctl管理tomcat9服务的主要步骤。systemctl可以很方便的管理和控制tomcat9服务


执行systemctl start tomcat9出现Job for tomcat9.service failed because the control process exited with error code. See "systemctl status tomcat9.service" and "journalctl -xe" for details.

执行systemctl start tomcat9出现这个错误,是因为tomcat9.service文件中的ExecStart指令路径不正确,导致启动脚本启动失败。

我们可以通过以下两条命令查看详细错误信息:

1. systemctl status tomcat9.service

这个命令可以查看tomcat9.service的状态信息,其中会显示启动脚本的错误输出,可以看到具体的错误原因。

2. journalctl -xe

这个命令查看系统日志,里面也会有tomcat9.service启动时的错误日志,同样可以查看失败原因。

根据错误信息中显示的路径问题,修正tomcat9.service文件中的ExecStart路径,然后重新加载配置、启动Tomcat:

sudo systemctl daemon-reload
sudo systemctl start tomcat9

如果还是失败,继续查看状态信息和日志,修正其他问题,直到启动成功。

所以,解决这个错误的思路是:

1. 查看状态信息和日志,获取失败的具体原因。

2. 修正tomcat9.service文件中路径或者其他问题。

3. 重新加载配置并启动。

4. 如果还失败,重复步骤1-3,直到启动成功。


执行journalctl -xe

Failed at step USER spawning /opt/apache/tomcat/apache-tomcat-9.0.71/bin/startup.sh: No such process

这个错误表示systemctl在启动tomcat9服务时,无法执行tomcat目录下的startup.sh脚本。

原因主要有两种:

1. tomcat9.service文件中的ExecStart路径错误。

这个可以通过查看tomcat9.service文件中的ExecStart字段,确保路径正确,在需要的地方添加绝对路径。

例如,正确的ExecStart字段应该是:

ExecStart=/opt/apache/tomcat/apache-tomcat-9.0.71/bin/startup.sh

2. tomcat9.service的User和Group配置问题。

这个服务文件中,User和Group字段配置的用户需要有执行/opt/apache/tomcat目录下startup.sh脚本的权限。

例如,可以配置:

User=tomcat  
Group=tomcat

然后给/opt/apache/tomcat目录赋予tomcat用户读写执行权限

sudo chmod 755 /opt/apache/tomcat
sudo chown -R tomcat:tomcat /opt/apache/tomcat

解决此错误的步骤:

1. 确认tomcat9.service文件中ExecStart路径正确。

2. 确认该服务文件中User和Group字段配置的用户有执行startup.sh脚本的权限,如果没有则赋予权限。

3. 重新加载配置并启动Tomcat:

sudo systemctl daemon-reload
sudo systemctl start tomcat9

4. 如果还失败,继续查看状态信息和日志排错,直到启动成功。

这是一个使用systemd管理tomcat服务时,路径和权限导致的常见问题。通过上述步骤检查并修正配置,一般可以解决此类错误。

举报

相关推荐

0 条评论