jenkin执行权限问题

jenkins执行报错
stderr: Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
fatal: Could not read from remote repository

原因:git上配置的 ssh key是root的,但jenkins配置的执行用户是jenkins,导致权限问题

解决方案一

切换jenkins执行用户为root:
1.打开这个脚本(使用VIM或其他编辑器):
vim /etc/sysconfig/jenkins
2.找到这个$JENKINS_USER并改为“root”:
$JENKINS_USER="root"

更新以下目录用户
chown -R root:root /var/cache/jenkins
以及rpm包安装后jenkins的文件目录用户
(1)/usr/lib/jenkins/:jenkins安装目录,WAR包会放在这里。
( 2 ) /etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置。
(3)/var/lib/jenkins/:默认的JENKINS_HOME。
(4)/var/log/jenkins/jenkins.log:Jenkins日志文件。

service jenkins stop
service jenkins start

解决方案二

jenkins服务器上用 jenkins用户生成sshkey添加到git
 问题:切换jenkins用户失败
    解决:vim /etc/passwd,修改最后/bin/false为/bin/bash
1.切换为jenkins用户
    执行ssh-keygen -t rsa 
2.添加~/.ssh/id_rsa.pub 内容到gitlab

这个方法没有用,理论可行
    
原文地址:https://www.cnblogs.com/paisen/p/9776690.html