这里是使用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服务时,路径和权限导致的常见问题。通过上述步骤检查并修正配置,一般可以解决此类错误。
服务器租用托管,机房租用托管,主机租用托管,https://www.e1idc.com