启用 tomcat 失败:节头“[Unit] Description=Apache Tomcat”无效

dhi*_*raj 3 java tomcat

我正在尝试默认启用 tomcat 服务器。我按照这种方法安装 tomcat 9。我的 tomcat.service 文件看起来像,

\n\n
[Unit] Description=Apache Tomcat\nAfter=syslog.target network.target\n[Service] Type=forking\nEnvironment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64\nEnvironment=CATALINA_PID=/opt/tomcat/apache-tomcat-9.0.8/temp/tomcat.pid\nEnvironment=CATALINA_HOME=/opt/tomcat/apache-tomcat-9.0.8\nEnvironment=CATALINA_BASE=/opt/tomcat/apache-tomcat-9.0.8\nEnvironment=\'CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC\'\nEnvironment=\'JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom\'\nWorkingDirectory=/opt/tomcat/apache-tomcat-9.0.8\nExecStart=/opt/tomcat/apache-tomcat-9.0.8/bin/startup.sh\nExecStop=/opt/tomcat/apache-tomcat-9.0.8/bin/shutdown.sh\nUser=tomcat\nGroup=tomcat\nUMask=0007\nRestartSec=10\nRestart=always\n[Install] WantedBy=multi-user.target\n
Run Code Online (Sandbox Code Playgroud)\n\n

我检查了在端口 8080 上运行的 tomcat 服务器https://localhost:8080。但我无法启用 Tomcat 服务器。

\n\n

该命令sudo systemctl enable tomcat返回以下错误。

\n\n
\xe2\x97\x8f tomcat.service\n   Loaded: error (Reason: Bad message)\n   Active: inactive (dead)\n\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:35:04 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:35:05 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:35:10 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:43:02 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:43:55 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:46:02 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 11 14:47:53 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 12 19:22:44 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 12 19:23:55 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\xe0\xb8\x9e.\xe0\xb8\x84. 12 19:25:17 portal-gic systemd[1]: /etc/systemd/system/tomcat.service:1: Invalid section header \'[Unit] Description=Apache Tomcat\'\n\n
Run Code Online (Sandbox Code Playgroud)\n

gis*_*gis 5

正如@andreswjames所说,错误是由第一行引起的。你应该打破[Unit]Description=Apache Tomcat排队。对[Service][Install]线也做同样的事情。最终输出将如下所示,

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

[Service] 
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/apache-tomcat-9.0.8/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat/apache-tomcat-9.0.8
Environment=CATALINA_BASE=/opt/tomcat/apache-tomcat-9.0.8
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
WorkingDirectory=/opt/tomcat/apache-tomcat-9.0.8
ExecStart=/opt/tomcat/apache-tomcat-9.0.8/bin/startup.sh
ExecStop=/opt/tomcat/apache-tomcat-9.0.8/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install] 
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

编辑此文件后,您应该运行以下命令,

systemctl daemon-reload
Run Code Online (Sandbox Code Playgroud)

这将有助于系统识别我们的更改。

之后您可以启用并检查tomcat的状态。

sudo systemctl enable tomcat
sudo systemctl status tomcat
Run Code Online (Sandbox Code Playgroud)

希望这会对您有所帮助!