无法通过 init.d 脚本自动启动 JIRA

无法通过 init.d 脚本自动启动 JIRA

我在 Ubuntu 12.04 LTS (Precise Pangolin) 上运行 Atlassian JIRA。我希望在系统启动时自动启动 JIRA。为此,我jira在 中创建了脚本/etc/init.d,类似于 中描述的脚本Atlassian 的 Wiki

我可以通过相应调用来手动启动/停止 JIRA /etc/init.d/jira。但是,JIRA 不会在启动过程中启动。在 中,我看到了我在 中添加的类似和的/var/log/boot.log消息;但是,Java 进程似乎在启动过程中不存在,因为重启后没有 Java 进程。Starting jira...jira started.../etc/init.d/jira

知道为什么 Java 进程的寿命不长于启动进程吗?

谢谢,

马丁

答案1

对于在 Ubuntu 18.04 上遇到此问题的人来说,这显然是一个已知的错误在 Jira 中,还有一个问题还没有解决,而且似乎还没有解决。

要解决此问题,您需要 root 访问权限(或 sudo),并且需要编辑以在行/etc/init.d/jira后立即添加以下几行#!/bin/bash

### BEGIN INIT INFO
# Provides: jira
# Required-Start: $network $local_fs $syslog
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: JIRA Server
# Description: JIRA Server
### END INIT INFO

完成后,systemctl enable jira以 root 身份或使用 sudo 运行。

这将获取 Jira 附带的库存初始化脚本,以便在系统启动时正确启动服务。

答案2

我在自己的 java 进程中遇到了同样的问题,今天发现了这一点:https://github.com/hectcastro/chef-statsd/issues/10

您的问题可能是一样的。在我的启动脚本中,我使用 sudo 启动我的 java 进程,但如果 /etc/sudoers 中取消注释“Defaults requiretty”行,则启动时不允许使用 sudo。我通过注释掉该行并重新启动来测试该理论,果然我的进程启动了。我现在改用“daemon --user=myuser myapp”来启动我的应用程序。希望对您有所帮助。

答案3

相关内容