流浪汉+码头错误



我使用的是Vagrant 1.6.3, phusion/baseimage作为docker的提供程序。但是我一直在运行这个错误:

下面的SSH命令以非零退出状态响应。Vagrant认为这意味着命令失败!

ssh - i/tmp/key_e8ffa02d35af2bec7aab60fe7e9df4db_0c30703c7b7126cdf4832a41b85627e5-o Compression=yes -o ConnectTimeout=5 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p22 root@172.17.0.2 'sudo -E -H bash -l'

Stdout from the command:
boot2docker: 0.8.0
VAGRANT FENCE: 1402443935 41755
Reading package lists...
Building dependency tree...
Reading state information...

Stderr from the command:
Warning: Permanently added '172.17.0.2' (ECDSA) to the list of known hosts.
stdin: is not a tty
VAGRANT FENCE: 1402443935 88439
modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/3.13.3-tinycore64/modules.dep.bin'
E: Unable to locate package linux-image-extra-3.13.3-tinycore64
E: Couldn't find any package by regex 'linux-image-extra-3.13.3-tinycore64'
有谁能帮我吗?谢谢。

问题似乎是,您第一次对该服务器执行ssh操作,ssh要求您确认服务器的密钥。但是由于这是从脚本运行的,所以用户不会回答它,并且ssh返回一个错误代码。

选项1。我没有使用过vagrant,所以我不确定你是否可以ssh到这个主机来交互地添加密钥。

选项2。手动添加密钥。通常known_hosts文件是散列的,所以处理它不是很容易,可能有点困难。你必须使用ssh-keyscanssh-keygen来找到正确的钥匙。这是一个小教程,你可以谷歌更多。

3

选项。使用类似

的内容
yes "yes" | ssh ...

自动接受提供的密钥

选项4。不需要键,像这样

ssh -oStrictHostKeyChecking=no ...

注:我还没有测试过这些,所以有些可能不工作,对不起。

P.P.S.选项3和4存在安全问题。选项1和2更好,但如果不验证密钥,仍然可能造成安全问题。

相关内容

最新更新