我以这种方式安装了詹金斯:https://linuxize.com/post/how-to-install-jenkins-on-debian-9/
基本上是sudo apt install jenkins
,以root身份登录
然后,我创建了一个hudson
用户,并使用ssh-keygen
生成了一对密钥。
然后我尝试在gerrit-trigger
插件(https://plugins.jenkins.io/gerrit-trigger/)中使用公钥
但是它告诉我/home/hudson/.ssh/id_rsa
不存在。
我猜这是一个权限问题。当我使用apt install jenkins
时可以指定in user hudson
吗?
感谢。
答案 0 :(得分:0)
似乎您是使用root用户创建的ssh密钥。您需要以hudson用户身份登录时创建ssh密钥,也可以将路径更改为/root/.ssh/id_rsa
如果要使用hudson用户的路径,请先登录hudson用户,
苏多·苏-哈德逊
然后创建ssh密钥对:
ssh-keygen
然后您可以使用列表命令确认文件
ls -a / home / hudson /
如果在那里看到id_rsa文件,则可以放置其地址/home/hudson/id_rsa
答案 1 :(得分:0)
这似乎是与权限相关的问题。请将/ var / lib / jenkins中.ssh文件夹中所有文件的权限更改为jenkins。
chown jenkins:jenkins /var/lib/jenkins/.ssh && chown jenkins:jenkins /var/lib/jenkins/.ssh / *
chmod 700 /var/lib/jenkins/.ssh && chmod 600 /var/lib/jenkins/.ssh / *
还对hudson用户的ssh密钥进行类似的配置:
su-哈德逊
chmod 700〜/ .ssh && chmod 600〜/ .ssh / *
答案 2 :(得分:0)
Jenkins安装在debian中创建了一个jenkins用户。
我曾经做过su - jenkins
,然后为它ssh-keygen
创建了一个SSH密钥对
然后,詹金斯UI可以读取位于/var/lib/jenkins/.ssh/id_rsa