在 CentOS 中,Jenkins 的“权限”通常涉及 系统层面权限 和 Jenkins 内部权限 两个部分。下面分情况说明。
在 CentOS 上,Jenkins 默认以 jenkins 用户运行:
ps -ef | grep jenkins
查看:
cat /etc/sysconfig/jenkins | grep JENKINS_USER
常见值:
JENKINS_USER="jenkins"
编辑:
vi /etc/sysconfig/jenkins
修改:
JENKINS_USER="root"
然后:
chown -R root:root /var/lib/jenkins
chown -R root:root /var/log/jenkins
chown -R root:root /var/cache/jenkins
重启:
systemctl restart jenkins
⚠️ 不建议生产环境使用 root
常见目录:
/var/lib/jenkins # 主目录
/var/log/jenkins # 日志
/var/cache/jenkins # 缓存
修复权限:
chown -R jenkins:jenkins /var/lib/jenkins
如果 Jenkins 需要执行:
可把 jenkins 用户加入对应组:
usermod -aG docker jenkins
usermod -aG wheel jenkins
重启 Jenkins:
systemctl restart jenkins
路径:
系统管理 → 全局安全配置
设置:
系统管理 → 管理用户 → 新建用户
| 权限 | 说明 |
|---|---|
| Overall/Administer | 管理员 |
| Overall/Read | 可读 Jenkins |
| Job/Build | 构建 |
| Job/Read | 查看任务 |
| Job/Configure | 配置任务 |
| Slave/Connect | 节点 |
示例(管理员):
admin -> Overall/Administer ✅
示例(普通用户):
dev -> Overall/Read ✅
Job/Read ✅
Job/Build ✅
更推荐中大型团队使用。
安装插件:
Role-based Authorization Strategy
配置:
系统管理 → Manage and Assign Roles
原因:
解决:
chown -R jenkins:jenkins /path
或把用户加入组。
查看日志:
journalctl -u jenkins -xe
cat /var/log/jenkins/jenkins.log
如果你有具体场景(如 Docker、K8s、Git、SSH),我可以给你更精确的配置示例。