2

我正在尝试重新启动 Jenkins,但它无法说出以下错误。有人对此有任何线索吗?

$ service jenkins restart
Shutting down Jenkins killproc: Empty pid file /var/run/jenkins.pid for /usr/lib64/jvm/jre/bin/java
                                                                                                                                                                          done
Starting Jenkins dirname: extra operand `/proc/13265/exe'
Try `dirname --help' for more information.
basename: missing operand
Try `basename --help' for more information.
                                                                                                                                                                          failed
4

1 回答 1

3

可能当您重新启动服务时,jenkins 不会删除 /proc 目录中的文件。在启动 jenkins 之前执行此行:

find /proc -maxdepth 2 -user jenkins -name exe -lname '*/bin/java'

如果您有结果(如我的情况),则意味着有一个较旧的 /proc/XXXX 目录,jenkins 创建了另一个目录。这就是这个过程失败的原因(在运行时有目录,它会导致错误)

解析度

选项1:尝试删除执行“ find /proc -maxdepth 2 -user jenkins -name exe -lname '*/bin/java'”命令时出现的目录(出于许可原因,我不能

选项 2:修改文件 /etc/init.d/jenkis,找到包含此代码的行:

JPROC=$( find /proc -maxdepth 2 -user $JENKINS_USER -name exe -lname "*/bin/java" )

并将其替换为这个:

JPROC=$( find /proc -maxdepth 2 -user $JENKINS_USER -name exe -lname "*/bin/java"  | tail -1 )

第二个选项对我有用。我应该告诉詹金斯人这个错误。

于 2014-03-14T23:37:26.120 回答