Jenkins重启错误,启动Jenkins目录名: extra operand `/proc

标签 jenkins continuous-integration jenkins-plugins

我正在尝试重新启动 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

最佳答案

可能当你重新启动服务时,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 )

第二个选项适合我。我应该告诉 Jenkins 的人们这个错误。

关于Jenkins重启错误,启动Jenkins目录名: extra operand `/proc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17789757/

相关文章:

java - Jenkins 无法自动找到 JAVA_HOME

jenkins - Jenkins Mac Catalina 中的错误 - 无法访问父目录 : Operation not permitted

jenkins - 无法通过jenkins连接到AWS从站

continuous-integration - 是否可以在 Hudson 中通过修订来参数化 subversion 存储库 URL?

git - 每次都克隆 jenkins git 插件

jenkins - 如何避免 Jenkins 多分支管道作业触发自身

api - 你如何使用 CURL 访问使用 Github OAuth 的 jenkins api

azure - 从 CircleCI 部署到 Azure

电子邮件扩展插件 - 无法让 BUILD_LOG_EXCEPT 工作

jenkins - 从 Jenkins 管道获取 ssh-steps 输出