詹金斯许可被拒绝

时间:2017-12-11 15:59:05

标签: jenkins permissions jenkins-pipeline file-permissions user-permissions

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

我已经成功安装(让我们开始时仍有希望)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运行)拥有此存储库的所有权限。我试图给group和其他人读取和执行权限,但它不会改变任何东西。

[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网址。除此之外,我看不出可能是导致问题的原因......

编辑:带有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)

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

确实是/ 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,现在工作正常。