【问题标题】:Tomcat not starting : tomcat.service: Control process exited, code=exited status=1Tomcat 未启动:tomcat.service:控制进程已退出,code=exited status=1
【发布时间】:2021-04-25 13:27:00
【问题描述】:

This is the error message i am facing

我已经安装了tomcat8。我删除了它,然后我尝试再次安装 tomcat8,但遇到了这个问题,我无法再次安装 tomcat。 我在安装之前遵循的步骤列表 -

  1. sudo apt-get remove tomcat8
  2. sudo apt-get remove --auto-remove tomcat8
  3. sudo apt-get purge tomcat8
  4. sudo apt-get purge --auto-remove tomcat8

现在我从这里安装了新的 tomcat8 - https://websiteforstudents.com/setup-apache-tomcat-8-8-5-on-ubuntu-16-04-18-04-lts/

出现错误 - 图片附在上面

【问题讨论】:

标签: ubuntu tomcat tomcat8 tomcat8.5


【解决方案1】:

首先,如果您使用的是 Debian 或 Ubuntu,使用 tomcat8/tomcat9 软件包(参见 packages.ubuntu.com)是运行 Tomcat 服务器的最简单方法。

在您的情况下,tomcat.service 文件缺少 PIDFile 选项,这有助于以可靠的方式确定 Tomcat 正在运行。因此,我将修改您的 tomcat.service 脚本以包含:

[Service]
# ...
# The rest of the options
PIDFile="/run/tomcat.pid"
Environment="CATALINA_PID=/run/tomcat.pid"

在启动服务之前,确保您的 Tomcat 没有运行(killall java 或更微妙的东西)并记住重新加载 SystemD 守护进程:

systemctl daemon-reload

编辑:修改后tomcat.service 文件应如下所示:

[Unit]
Description=Tomcat servlet container
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/run/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

PIDFile="/run/tomcat.pid"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

【讨论】:

  • 需要修改什么?,下面是我的tomcat.service内容 [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/default-java" Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom" Environment="CATALINA_BASE=/opt/tomcat" Environment="CATALINA_HOME=/opt/tomcat" Environment="CATALINA_PID=/opt/tomcat /temp/tomcat.pid" Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC" ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh [安装] WantedBy=multi-user.target
  • 我将整个 tomcat.service 文件添加到答案中。
  • 在此之后也没有工作,在下面粘贴错误 - startup.sh[12026]: Tomcat 已启动。 systemd[1]:启动 Tomcat servlet 容器。 shutdown.sh[12089]: $CATALINA_PID 已设置,但指定的文件不存在。 Tomcat 正在运行吗?停止中止 systemd [1]:tomcat.service:控制进程退出,code=exited status=1 systemd[1]:tomcat.service:失败,结果为“exit-code”。 systemd[1]: /etc/systemd/system/tomcat.service:19: 不是绝对路径,忽略:“/run/tomcat.pid”
  • 检查 Tomcat 的日志,看看服务器启动失败的原因。
猜你喜欢
  • 2020-06-23
  • 2021-03-19
  • 2021-12-22
  • 2018-06-17
  • 2022-11-02
  • 2018-12-24
  • 2022-08-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多