Jenkins 詹金斯的许可被拒绝

Jenkins 詹金斯的许可被拒绝,jenkins,permissions,jenkins-pipeline,file-permissions,user-permissions,Jenkins,Permissions,Jenkins Pipeline,File Permissions,User Permissions,我很抱歉来到这里,并要求,但我已经阅读了所有的互联网试图找到一个解决方案,但我仍然有这个问题 我已经成功地安装了jenkins(让我们从我还有希望的时候开始),以便在我们的持续集成流程中使用它 我试着从这样一个简单的例子开始: 管道{ 任何代理人 舞台{ 阶段(‘构建’){ 台阶{ sh“mvn-B-DskipTests清洁包” } } } } 但每次启动时,我都会出现以下错误: sh: /var/lib/jenkins/workspace/Test@tmp/durable-f70a79f3/

我很抱歉来到这里,并要求,但我已经阅读了所有的互联网试图找到一个解决方案,但我仍然有这个问题

我已经成功地安装了jenkins(让我们从我还有希望的时候开始),以便在我们的持续集成流程中使用它

我试着从这样一个简单的例子开始:

管道{
任何代理人
舞台{
阶段(‘构建’){
台阶{
sh“mvn-B-DskipTests清洁包”
}
}
}
}
但每次启动时,我都会出现以下错误:

sh: /var/lib/jenkins/workspace/Test@tmp/durable-f70a79f3/script.sh: Permission denied
问题是用户jenkins(服务和主节点以jenkins的身份运行)拥有此存储库的所有权限。我试图给组和其他人阅读和执行的权限,但这并没有改变任何事情

[centos@jenkins workspace]$ ll
total 8
drwxr-xr-x 2 jenkins jenkins 4096 Dec  8 18:35 Test
drwxr-xr-x 2 jenkins jenkins 4096 Dec 11 16:40 Test@tmp
我们正在使用以下参数启动jenkins:

 -Djava.awt.headless=true -Djenkins.install.runSetupWizard=false -Djava.io.tmpdir=/var/lib/jenkins/tmp
和一个/詹金斯网址。除此之外,我不知道问题的原因是什么

编辑:使用noexec装入的卷

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
/dev/mapper/rootvg-var_lv on /var type ext4 (rw,nodev,noexec,relatime,nobarrier,data=ordered)

非常感谢您的帮助。

这确实是noexec的/var。。。我不认为所有/var都在noexec中。这句话我读了10遍,甚至都没想改。。。谢谢你的帮助

解决方案: 正如我在评论中所说,这是一句话:

/dev/mapper/rootvg-var\u lv on**/var**type ext4(rw、nodev、**noexec**、relatime、nobarrier、data=ordered)


因此,我使用了
sudo mount-o remount,exec/var
,它现在运行良好。

您在
Test@tmp
?尝试仅将权限更改为您的
script.sh
。类似于:
chmod755${WORKSPACE}/Test@tmp/**/*.sh
代理能否在卷上有
noexec
(请参阅)?@Edwin:我没有任何脚本。我认为是jenkins在持久存储库中创建了一个.sh并尝试执行它。您是否查看了您的
pom.xml
也许您正在与maven一起做一些事情point@mkobit:我刚刚看到/var是在没有exec的情况下装载的。。。我没想到/var中的所有文件都不能被执行。起初我以为它只是在存储库中,但这似乎是一个很好的线索,当我找到一个解决方案来更改它时,我会不断更新。谢谢,很高兴我能为你指出正确的方向!留下一些确定这一点的步骤可能会有帮助,这样其他人也不会遇到。