J'ai résolu le problème une fois, mais j'ai rencontré à nouveau le même problème dans un autre environnement et je n'ai pas gardé de trace, j'ai donc lutté pendant 2 heures et pris note de ne pas répéter la troisième erreur à l'avenir.
Si je crée /etc/systemd/system/tomcat.service comme dans l'exemple sur (https://weblabo.oscasierra.net/installing-tomcat8-centos7-1/), cela ne fonctionne pas.
File Edit Options Buffers Tools Help
[Unit]
Description=Apache Tomcat 8
After=network.target
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/usr/java/tomcat8/temp/tomcat.pid
RemainAfterExit=yes
ExecStart=/usr/java/tomcat8/bin/startup.sh
ExecStop=/usr/java/tomcat8/bin/shutdown.sh
ExecReStart=/usr/java/tomcat8/bin/shutdown.sh;/usr/java/tomcat8/bin/startup.sh
[Install]
WantedBy=multi-user.target
Au fait, si vous exécutez manuellement /usr/java/tomcat8/bin/startup.sh, cela fonctionne correctement.
[root@localhost ~]# systemctl start tomcat
Job for tomcat.service failed because the control process exited with error code.
See "systemctl status tomcat.service" and "journalctl -xe" for details.
11 août 23:47:39 localhost.localdomain systemd[1]: Starting Apache Tomcat 8...
-- Subject: Unit tomcat.service has begun start-up
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Unit tomcat.service has begun starting up.
11 août 23:47:39 localhost.localdomain systemd[2079]: tomcat.service: Failed to execute command: Permission denied
11 août 23:47:39 localhost.localdomain systemd[2079]: tomcat.service: Failed at step EXEC spawning /usr/java/tomcat8/bin/startup.sh: Permission denied
-- Subject: Process /usr/java/tomcat8/bin/startup.sh could not be executed
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- The process /usr/java/tomcat8/bin/startup.sh could not be executed and failed.
--
-- The error number returned by this process is 13.
11 août 23:47:39 localhost.localdomain systemd[1]: tomcat.service: Main process exited, code=exited, status=203/EXEC
11 août 23:47:39 localhost.localdomain systemd[1]: tomcat.service: Failed with result 'exit-code'.
11 août 23:47:39 localhost.localdomain systemd[1]: Failed to start Apache Tomcat 8.
-- Subject: Unit tomcat.service has failed
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Unit tomcat.service has failed.
--
-- The result is failed.
Vous pouvez vous référer à https://stackoverflow.com/questions/53994521/tomcat-8-on-centos-7-does-not-start-as-service-but-it-starts-manually.
Le cadre qui a finalement fonctionné. Comme mentionné dans l'URL ci-dessus, le répertoire de travail est-il suspect après tout?
/etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat 8
After=network.target
[Service]
Type=forking
WorkingDirectory=/usr/java/tomcat8/bin
ExecStart=/bin/bash /usr/java/tomcat8/bin/catalina.sh start
ExecStop=/bin/bash /usr/java/tomcat8/bin/catalina.sh stop
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target
Recommended Posts