我尝试通过 systemctl 运行 jenkins,但它在启动后立即死机。“systemctl status”和“journalctl”中没有任何内容。Jenkins 日志也没有显示任何内容。
我缩小了启动守护进程的代码段。在 /etc/init.d/functions 中的“daemon()”函数中:
$cgroup $nice runuser -s /bin/bash $user -c "$corelimit 2>&1 ; $*"
当我将其打印出来时,它显示:
runuser -s /bin/bash jenkins -c ulimit -S -c 0 >/dev/null 2>&1 ; \
/etc/alternatives/java -Djava.awt.headless=true \
-Djenkins.install.runSetupWizard=false -DJENKINS_HOME=/var/lib/jenkins \
-jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log \
-webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 \
--handlerCountMax=100 --handlerCountMaxIdle=2
当我从 CLI 手动运行它时,它运行良好。但是当通过“daemon()”运行时,它会在不到一秒的时间内死机。
如果重要的话,它是在 Oracle Linux 7 UEK4 上运行的。
更新:我尝试了以下场景:
1) systemctl start jenkins # FAILS
2) /etc/rc.d/init.d/jenkins start # FAILS
3) cp /etc/rc.d/init.d/jenkins /var/tmp; /var/tmp/jenkins start # SUCCESS
这很奇怪...