詹金斯权限被拒绝

Jenkins Permission Denied

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

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

我试图从一个像这样的简单示例开始:

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                sh 'mvn -B -DskipTests clean package' 
            }
        }
    }
}

但是每次我启动它时,我都会遇到这个错误:

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

和 /jenkins url。除此之外,我看不出问题的原因...

编辑:使用 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)

非常感谢您的帮助。

确实是/var with noexec...没想到所有的/var都在noexec中。这行我读了 10 遍,甚至都没有尝试更改它...谢谢您的帮助

解决方案: 就像我在评论中所说的那样,就是这一行:

/dev/mapper/rootvg-var_lv on **/var** type ext4 (rw,nodev,**noexec**,relatime,nobarrier,data=ordered)

所以我使用了 sudo mount -o remount,exec /var,现在它工作正常。