【问题标题】:Jenkins cannot open directory Permission denied詹金斯无法打开目录权限被拒绝
【发布时间】:2016-05-13 15:43:01
【问题描述】:

我正在使用 Jenkins 来“执行 shell”命令

ls -l /mnt/ftpbackup/ftpuser/*

但是出现错误

ls: cannot open directory /mnt/ftpbackup/ftpuser/: Permission denied

当我以“jenkins”用户身份登录时,我能够运行相同的命令,见下文:

-bash-4.1$ id
uid=493(jenkins) gid=490(jenkins) groups=490(jenkins),504(ftpuser) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
-bash-4.1$ ls -l /mnt/ftpbackup/ftpuser
total 48116044
....

【问题讨论】:

  • 只是为了验证,什么是“用户启动”?詹金斯?您可以在失败的詹金斯构建的控制台日志中找到相同的内容。
  • 我在控制台日志上看不到用户名,除了 [workspace] $ /bin/sh -xe /var/lib/jenkins/tmp/hudson4869177118530409607.sh
  • 您也可以找到相同的外部控制台日志,单击左侧构建历史中的构建号?

标签: jenkins


【解决方案1】:

你是想通过jenkins在jenkins master中执行这个命令吗?

尝试 whoami 命令找出 jenkins 正在使用哪个用户来执行命令

如果您在任何节点中执行,jenkins 将使用您在节点设置中提供的凭据连接到该节点,请检查。

【讨论】:

  • 对,我正在尝试在 jenkins master 中执行此命令,我认为我没有为 master 提供任何凭据,我应该怎么做?
  • 我找到了解决方法,使用插件通过非 jenkins 凭据 ssh 到 localhost,而不是在 jenkins 中执行 shell,它工作正常
  • 将“execute shell”中的命令作为“whoami”传递。这样你就可以找到 jenkins 正在使用的用户。
猜你喜欢
  • 2018-05-25
  • 2018-04-04
  • 2012-06-08
  • 2018-10-01
  • 2014-08-25
  • 2020-01-08
  • 1970-01-01
  • 2017-03-26
  • 1970-01-01
相关资源
最近更新 更多