当前位置: 首页 > 知识库问答 >
问题:

日志7。以OpenJDK 11 JDK作为服务的Ubuntu18.04 LTS无法启动x服务,但以其他方式启动

全飞扬
2023-03-14

我试图在Ubuntu 18.04 LTS上使用logstash的SystemV服务。每当我尝试使用service命令时,服务启动失败

# service logstash start && journalctl -u logstash

logstash.service: Failed to execute command: Exec format error
logstash.service: Failed at step EXEC spawning /usr/share/logstash/bin/logstash: Exec format error

我在我的服务器上为我的应用程序安装了openjdk-11-jdk,所以我想这就是logstash用来启动的:

# which java

/usr/bin/java

# /usr/bin/java --version

openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu118.04.1)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu118.04.1, mixed mode, sharing)

我使用APT安装了logstash,地址:debhttps://artifacts.elastic.co/packages/7.x/apt稳定干管

似乎这样的错误发生时Java兼容性问题,但从弹性留档OpenJDK 11和logstash在ubunetu 18.04 LTS应该工作。

/etc/systemd/system/logstash。服务文件是:

[Unit]
Description=logstash

[Service]
Type=simple
User=logstash
Group=logstash
# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
# Prefixing the path with '-' makes it try to load, but if the file doesn't
# exist, it continues onward.
EnvironmentFile=-/etc/default/logstash
EnvironmentFile=-/etc/sysconfig/logstash
ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash"
Restart=always
WorkingDirectory=/
Nice=19
LimitNOFILE=16384

# When stopping, how long to wait before giving up and sending SIGKILL?
# Keep in mind that SIGKILL on a process can cause data loss.
TimeoutStopSec=infinity

[Install]
WantedBy=multi-user.target

使用以下命令:

/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash"

似乎工作:

OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.jruby.ext.openssl.SecurityHelper (file:/tmp/jruby-60735/jruby15836533716820282820jopenssl.jar) to field java.security.MessageDigest.provider
WARNING: Please consider reporting this to the maintainers of org.jruby.ext.openssl.SecurityHelper
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Sending Logstash logs to /var/log/logstash which is now configured via log4j2.properties
[2020-08-26T17:35:16,236][INFO ][logstash.runner          ] Starting Logstash {"logstash.version"=>"7.9.0", "jruby.version"=>"jruby 9.2.12.0 (2.5.7) 2020-07-01 db01a49ba6 OpenJDK 64-Bit Server VM 11.0.8+10-post-Ubuntu-0ubuntu118.04.1 on 11.0.8+10-post-Ubuntu-0ubuntu118.04.1 +indy +jit [linux-x86_64]"}
....
[2020-08-26T17:35:24,858][INFO ][logstash.agent           ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}
[2020-08-26T17:35:25,057][INFO ][logstash.agent           ] Successfully started Logstash API endpoint {:port=>9600}

共有1个答案

柳景胜
2023-03-14

我的问题来自错误定制的/usr/share/logstash/bin/logstash文件,我删除了定制的LS_JAVA_选项,并成功地解决了这个问题。

 类似资料:
  • null 我很感激任何建议/帮助。

  • 严重:启动java.util.concurrent.ExecutionException时子容器失败:org.apache.Catalina.LifeCycleException:启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/HelloWorldRestService]](位于java.util.con

  • 因此,我使用下面的代码作为尝试自动启动Appium服务器,但获得连接被拒绝:连接错误。我正在使用Maven和Testng 日志:

  • 我希望payara服务器作为服务运行。我以sudo的身份登录asadmin,并使用create-service命令。给出了以下输出。 这将在 /etc/init.d/ 文件夹中创建payara_production脚本,但一旦重新启动计算机,就不会执行此脚本。我必须手动启动payara才能运行它。 “您已经创建了服务,但是您需要自己启动它”是什么意思,我在之前使用的GlassFish版本中没有类似

  • 我已经在CentOS虚拟机上安装了Tomcat(apache-Tomcat-8.5.37)(使用bento/CentOS-7)。 Tomcat安装在 Java8安装在 在安装Tomcat之前,我已经用这种方式创建了一个Tomcat用户 如果我尝试手动启动Tomcat,请使用 一切都很好,我可以从url测试Tomcat广告的示例 (注意:192.168.33.10是我的虚拟机的IP…) 我还可以使用

  • 问题内容: 码头工人给我一个困难时期。我按照以下说明进行操作,以便在运行由strato.de托管的Ubuntu 14.04的虚拟服务器上安装docker。 执行此行直接将我带入此错误消息: 安装完成后,我安装了上述两个软件包。现在我的问题是我无法让docker运行。 结果是: 结果是 和 结果是 有人对缺少哪些依赖项有任何线索吗?还有什么可能出问题了?码头工人是否提供任何日志? 我正在来回寻找解决