我的流浪汉昨晚工作得很好。我刚打开电脑,点击《流浪者》,这就是我得到的:

==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...

有人吃过这个吗?vagrant在网络上还没有被广泛报道,我也找不到发生这种情况的原因。


当前回答

就像有些人已经指出的那样,如果VirtualBox映像没有正确引导,就会出现错误。对我来说,在《Vagrant》中使用GUI模式并没有太大帮助,因为它只显示一个黑色窗口。在virtualbox GUI中,我检查了虚拟机的设置,发现操作系统设置不正确(Debian 32而不是64位)。

所以我只能建议手动检查虚拟机的VirtualBox设置,让虚拟机启动,而不是首先使用Vagrant。

其他回答

我有一个问题与现有的盒子(不确定什么改变),但我可以通过SSH连接,即使流浪者盒子无法启动。碰巧我的SSH密钥以某种方式改变了。

从vagrant根文件夹中,我运行vagrant ssh-config,它告诉我密钥文件在哪里。我用puttygen打开它,它给了我一把新钥匙。

在我的Linux客户机上,我编辑了~/。Ssh /authorized_keys并将新的公钥放入其中。

现在一切都恢复正常了!

我在VirtualBox中运行vagrant/VirtualBox时得到了这个。我通过在主机上运行流浪机器来解决这个问题。

关闭虚拟机内部的iptables防火墙

我是这样解决的:

我在我的Vagrantfile中启用了GUI界面(这是配置文件) 我可以在Gui中使用标准用户名vagrant和密码vagrant登录运行中的虚拟机 我关闭了虚拟机内部运行的iptables防火墙

这解决了我的问题,我发现,防火墙阻止了来自本地网络的所有ip,如192.168.x。X和10.x.x.x

添加/etc/iptables规则。D /199-allow-wan允许wan的所有连接:

ip46tables -A wan-input -j ACCEPT

(ip46tables是一个别名)在我的Vagrant例子Freifunk社区中看到这个提交

我在《Vagrant 1.6.5》和《Virtual Box 4.3.16》中也遇到了同样的问题。 在https://github.com/mitchellh/vagrant/issues/4470上描述的解决方案对我来说很好,我只需要删除VirtualBox 4.3.16并安装旧版本4.3.12。

如果您正在使用包装层(如Kitchen CI),并且正在运行32b主机,则必须抢先安装Vagrant盒子。它们的默认提供程序是二进制文件的opscode“家族”。

所以在厨房创建default-ubuntu-1204之前,请确保您使用:

vagrant box add default-ubuntu-1204 http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_ubuntu-12.04-i386_chef-provisionerless.box

如果您的主机不支持字大小虚拟化,则使用32b映像