错误讯息:
/var/jenkins_home/.ssh/known_hosts [SSH] No Known Hosts file was found at /var/jenkins_home/.ssh/known_hosts. Please ensure one is created at this path and that Jenkins can read it.
无论我尝试了多少都不起作用。我读过this post,但仍然没有解决方案。
答案 0 :(得分:17)
启动slave时我遇到了同样的错误。它与SSH Slave Plugin
有关。对我有用的是将LAUNCH METHOD中的主机密钥验证策略从“Known Hosts file verification strategy
”更改为"Manually trusted key verification strategy"
。
配置代理 - >发射方法 - >手动信任密钥验证 策略 - > SAVE。
希望这有帮助。
答案 1 :(得分:0)
问题在于Jenkins通过报告文件/var/jenkins_home/
下的文件丢失(这是一个硬编码值)而引起混乱。相反,它应该告诉您在实际的$JENKINS_HOME
路径下文件丢失。这样,您将立即知道在哪里看。
因此解决此问题的最简单方法是:
转到Jenkins主目录上的实际$JENKINS_HOME
目录,并在其下创建一个.ssh
目录和known_hosts
文件,例如:
$ mkdir $JENKINS_HOME/.ssh
$ touch $JENKINS_HOME/.ssh/known_hosts
如果您以前曾经从Jenkins主服务器通过SSH方式连接到从计算机,那么您的known_hosts
目录下应该已经有一个~/.ssh
文件。如果不这样做,则从Jenkins主服务器到Jenkins从计算机的SSH,它将在该用户的~/.ssh
目录下为您自动创建。
现在打开该~/.ssh/known_hosts
文件,然后简单地将包含您的从属计算机IP地址的行复制>粘贴到$JENKINS_HOME/.ssh/known_hosts
文件中。另一种方法是将整个~/.ssh/known_hosts
文件复制到$JENKINS_HOME/.ssh
目录,如果这样更方便。
答案 2 :(得分:-1)
一个非常简单的步骤帮助我恢复了此错误。
在从属配置中,为主机密钥验证策略选择“无验证验证策略”。这将允许主机与从机连接,主机也将被记住。
下次选择“已知主机文件验证策略”时,不会出现此错误。