使用 SSH 密钥连接 Git 存储库时,我得到
stderr:致命:无法执行'/tmp/jenkins-gitclient-ssh8082731096055760363.sh-copy':权限被拒绝 致命:无法分叉。
请帮忙解决问题。
以下解决方案在 Ubuntu 中对我有用:
findmnt
查找所有文件系统,以便查看 /tmp
文件夹中有哪些选项。检查是否有名为 noexec
的选项。/etc/fstab
并修改为/tmp
添加新配置,其中列出了noexec。例如 tmpfs /tmp tmpfs exec 0 0
.mount -a
挂载fstab
中提到的所有文件系统。如果您使用的 Ubuntu 版本高于 20,请按照此处
找到的答案进行操作您可以将 Jenkins 和子进程(?)对 /tmp 的访问转移到它自己的 /var/jenkins_tmp 或类似的东西。
[service]
BindPaths=/var/jenkins_tmp:/tmp
首先创建/var/jenkins_tmp文件夹:
# sudo su -
mkdir /var/jenkins_tmp
chown jenkins:jenkins /var/jenkins_tmp
chmod 770 /var/jenkins_tmp
您可能想研究诸如“日志轮换”或“/tmp 清理”之类的内容,以及如何为此目录进行设置。