stream浪者卡住连接超时重试

我的stream浪者昨天晚上工作得很好。 我刚打开个人电脑,撞上了vagrant up ,这就是我所得到的:

 ==> 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... 

有没有人有过这个? networking上还没有广泛stream行stream浪,我找不到这种情况发生的原因。

我解决了这个问题,并会在别人有类似问题的情况下回答。

我所做的是:我启用了Virtual box的GUI,看到它正在等待启动时​​的input,以select是否要直接启动到Ubuntu或安全模式等。

要打开GUI,你必须把你的stream浪汉configurationVagrantfile

 config.vm.provider :virtualbox do |vb| vb.gui = true end 

当你用上面描述的方式卡住你的stream浪机时,不需要以gui模式启动(并且在没有X服务器的情况下是不可能的)。

当您的VM正在引导时,在一个单独的terminal窗口中,找出正在运行的机器的ID。

 vboxmanage list runningvms 

这将导致这样的事情:

 "projects_1234567890" {5cxxxx-cxxx-4xxx-8xxx-5xxxxxxxxxx} 

虚拟机通常只是等着你在引导程序中select一个选项。 您可以使用controlvm将适当的密钥(在这种情况下, input )发送到vm:

 vboxmanage controlvm projects_1234567890 keyboardputscancode 1c 

而已。 您的虚拟机将继续启动过程。

有一点要仔细检查,如果您的机器的BIOS中启用了硬件虚拟化。

我的问题是相同的超时string,但我只能在GUI中看到一个黑屏。

我刚刚build立的一台笔记本电脑不断显示出同样的问题。 经过几个小时的search,我终于find了一个提示,看看BIOS是否启用了硬件虚拟化。

这里是我发现的post的内容:

我看到还有一些用户遇到这个问题。 所以,我将尝试总结一下下面列出的SSH超时问题的一些可能的解决scheme:

  • 确保您的防火墙或防病毒程序不会阻止该程序(我怀疑会经常发生)
  • 给你的stream浪者一些时间超时发生。 如果你没有一个非常快的PC / Mac,虚拟机将需要一段时间启动到一个SSH就绪状态,所以超时会发生。
  • 因此,在结论是有故障之前,首先要尽量让stream浪汉超时。
  • 如果stream浪者完全超时,将stream浪文件中的超时限制提高到几分钟,然后重试。
  • 如果仍然不起作用,那么请尝试通过VirtualBox界面清理启动你的stream浪机,并预先启用机器的GUI。 如果GUI在启动时没有显示任何事情(即只是黑屏,没有文字),那么你的stream浪者机器已经出现问题。
  • 通过VB界面销毁整台机器并重新安装。
  • 删除用户文件夹中的Vagrant Images文件夹中的ubuntu镜像文件并重新下载并安装。
  • 你甚至有一个支持64位硬件虚拟化的英特尔处理器? 去谷歌上查询。 如果这样做,请确保Bios中没有禁用此function的设置。
  • 如果您正在运行Windows 7或8,请禁用超vfunction。Google如何禁用。
  • 确保您正在运行SSH客户端。 使用Git bash。 下载: http : //git-scm.com/downloads
  • 安装一个32位版本的Ubuntu,比如trusty32或者precise32。 只需更改vagrant文​​件中的版本,然后在新目录中重新安装vagrant。
  • 确保你使用的是最新的vagrant和virtualbox版本。 最后的胜地:格式化您的电脑,重新安装Windows,并购买英特尔核心isomething处理器。

希望有所帮助。

我find的解决scheme是检查连接到NAT的适配器1中的电缆连接选项。 我真的不知道,这是我的第四个stream浪者箱子,但是这是唯一一个没有检查电缆连接选项的设备,经过检查,它可以工作。 NAT电缆连接

我有完全相同的问题。 我认为这个问题可能是SSH密钥(错误的本地化文件或其他东西,但我检查了很多次),但你总是可以添加configuration部分的用户名和密码(不使用SSH密钥),并运行gui所以在Vagrantfile的代码应看起来像或多或less如下:

 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.ssh.username = "vagrant" config.ssh.password = "vagrant" config.vm.provider "virtualbox" do |vb| vb.gui = true end end 

在我的情况下,即使GUI显示,我得到了黑屏(没有错误或可能性login或其他),并在控制台我得到了Error: Connection timeout. Retrying... Error: Connection timeout. Retrying...很多次。 我确定我在BIOS中启用了VT-x(虚拟化),我检查了许多Virtual Box和Vagrant版本的组合以及许多Vagrant盒(其中一些在GUI中没有黑屏,但仍然有连接问题)。 最后我再次更新了VirtualBox和Vagrant到最后的版本,问题仍然存在。

关键是在运行vagrantup(在上面显示的Vagrantfile GUI)后,在VirtualBox中查看图标,如下图所示

在这里输入图像描述

尽pipe我在VirtualPC中没有错误(没有警告说VT-x没有启用),但是我的V图标早些时候是灰色的,所以这意味着VT-x被禁用了。 正如我所说,我一直在我的BIOS中启用它。

最后,我意识到这个问题可能是由我也安装了HYPER-V ,并启用了旧版Internet Explorer的testing网站。 我去了Windows Control Panel -> Programs and functions / Software并从左侧菜单中selectTurn on or Turn off Windows functions (希望你会发现那些,我使用波兰语Windows,所以不知道确切的英文名称)。 我closures了Hyper-V,重新启动电脑,运行Virtual Box后vagrant up我终于没有任何错误,在GUI中,我login屏幕,我的V图标停止灰色。

我浪费了很多时间来解决这个问题(和许多PC重新启动),所以我希望这可能有助于任何人在Windows上有问题 – 确保您的控制面板中closures了Hyper-V。

矿井运行良好,然后这个“警告:远程连接断开。重试…”反复 – 可能20次 – 直到它连接。 根据上面的答案我只是

 vagrant destroy vagrant up 

这一切都很好。 我的工作很简单,但是我通过将Vagrantfile简化为config.vm.box = "ubuntu/trusty64"这个工作,而且这个工作还在继续。 所以这就是为什么摧毁和重新开始似乎是最好的select。 鉴于这些stream浪者形象的无国籍性质,我不明白为什么这不会在任何情况下工作。 我正在进入这个领域,而我可能知道这不是事实。

我在Windows 8.1机器上遇到同样的问题。 连接超时并启用gui根本不是有用的,屏幕是黑色的。 在我的情况下修复是禁用“超V”

来自Vagrant文​​档的报价https://docs.vagrantup.com/v2/hyperv/index.html

警告:启用Hyper-V将导致VirtualBox,VMware和任何其他虚拟化技术不再起作用。 看到这个博客文章https://www.hanselman.com/blog/SwitchEasilyBetweenVirtualBoxAndHyperVWithABCDEditBootEntryInWindows81.aspx一个简单的方法来创build启动Windows启动Windows没有启用Hyper-V,如果有时你会需要其他虚拟机pipe理程序。;

如果您正在使用Windows 8或10,那么这对我来说是有效的:

  1. 更改BIOS设置以允许64位的虚拟化。
  2. 这里是如何:
    • 使用高级启动重新启动电脑(转到高级启动 – 现在重新启动 – “排除故障” – “高级选项” – “UEFI固件设置” – “重新启动”)
    • 内部BIOS窗口 – 进入“高级”菜单/选项卡 – 启用“英特尔虚拟技术”
    • 保存并退出。

我有一个与现有的盒子(不知道发生了什么变化)的问题,但我可以通过SSH连接,即使Vagrant框启动失败。 正如它发生我的SSH密钥已经改变了。

从stream氓根文件夹中,我运行vagrant ssh-config ,告诉我密钥文件在哪里。 我用puttygen打开这个,然后给了我一个新的钥匙。

在我的Linux客户机上,我编辑了~/.ssh/authorized_keys并把新的公钥放在里面。

一切都重新开始 – 现在!

我从我的Vagrantfile中删除了这一行后,遇到了同样的问题:

 config.vm.network "private_network", type: "dhcp" 

虚拟机装好后,我把这一行回来。

这里有很多很好的答案,我看不懂,但是我也来了一些小小的贡献。 我有两个不同的问题:

  1. vagrant up没能find我的ssh'id_rsa '(因为当时我还没有):我跑了ssh-keygen -t rsa -b 4096 -C "myemailaddress@mydomain.com" ,在这个GitHub的文章上 ,voilá,通过了这个;

  2. 然后,我得到了同样的问题,这个问题“ 警告:连接超时,重试… ”,永远……:所以,在阅读了很多,我已经重新启动我的系统,看着我的BIOS(F2获得那里,在PC上),并禁用了虚拟化 。 我已经启用了,保存,并再次启动系统,检查是否有任何改变。

在那之后, vagrant up就像一个魅力! 凌晨4点,但它正在运行! 多酷,哈? :D据我所知,很less有像我这样的受虐狂开发者会在Windows上尝试这个,特别是在Windows 10上 ,我不能忘记来到这里,留下我的话……另一个重要的信息是,我试图build立Laravel 5 ,使用家园,VirtualBox,composer php等。它已经工作。 所以,希望这个答案像这个问题和帮助帮助我。 我最好的祝福。 G-再见!

初始引导过程中的SSH连接超时可能与以下各种原因有关:

  • 检查BIOS中是否启用了虚拟化(按照注释 ),
  • 系统等待用户交互(例如共享分区未准备好 ),
  • 您的私钥不匹配(通过vagrant ssh-config检查vagrant ssh-config ),
  • 引导过程需要更长的时间(尝试增加config.vm.boot_timeout ),
  • 它从错误的驱动器(例如从安装程序ISO)启动,
  • VM防火墙configuration错误(例如iptablesconfiguration ),
  • 本地防火墙规则,端口冲突或与VPN软件冲突,
  • sshd错误configuration。

要debugging这个问题,请运行一个--debug选项或者像这样:

 VAGRANT_LOG=debug vagrant up 

如果没有什么明显的,那么尝试从另一个terminal连接到它,通过vagrant ssh或通过:

 vagrant ssh-config > vagrant-ssh; ssh -F vagrant-ssh default 

如果SSH仍然失败,请尝试使用GUI运行它(例如config.gui = true )。

如果不是,请检查正在运行的进程(例如: vagrant ssh -c 'pstree -a' )或validation您的sshd_config


如果它是一次性虚拟机,你总是可以试着destroy它并重新up它。

您还应该考虑升级您的Vagrant和Virtualbox。


有关更多信息,请查看debugging和故障排除页面。

当我使用x64 box(chef / ubuntu-14.04)时,我遇到了同样的问题。

我改为x32,它工作(hashicorp /精确32)。

也许这对于帮助很多人来说太简单了,但是值得一试,如果你没有做到:做一个“stream浪汉”而不是“stream浪汉”,然后用“stream浪汉”重新启动虚拟机。

我认为我的问题是由于一些“kworker”进程变得越来越bug,并不断在虚拟机中超时,所以做一个硬重启似乎正确地重新加载进程,而保存和恢复只是恢复损坏的进程在其中断状态。

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

我通过在/etc/fstab添加一个新条目来testing我的stream浪VM中的一个挂载文件夹。 后来我退出了,跑了徘徊,但是当我跑上了vagrant up我得到了:

 SSH auth method: private key Warning: Remote connection disconnect. Retrying... 

我阅读了所有这些post,并尝试了所有与我的案例相关的案例(除了stream浪的摧毁,这肯定会解决我的问题,但在我的情况下是最后的手段)。 @Kiee的post给了我一个想法,试图直接从VirtualBox GUI启动我的虚拟机。 在启动过程中,虚拟机停止运行,询问我是否想跳过安装之前添加到/etc/fstab的testing文件夹。 (这就是为什么stream浪汉无法启动虚拟机。)回答“否”后,虚拟机启动没有问题。 我login,从我的fstab中删除了淘气的行,并closures虚拟机。

之后,stream浪者能够启动就好了。

带走? 如果所有突如其来的stream浪者都无法启动回虚拟机,请尝试从提供者直接启动(在我的情况下是VirtualBox)。 有可能是你的启动挂钩的东西完全不相关的SSH。

在AMD64位上安装一个ubuntu32位的确有诀窍。 由于受限制的环境,我无法访问BIO,但是我仍然能够使用ubuntu / trusty32而不是ubuntu / trusty64

在Windows 7 SP1上使用Vagrant 1.6.3和VirtualBox 4.3.15

希望有所帮助。

我有同样的问题,但没有其他答案完全解决了我的问题。 回答@Kiee是有帮助的,尽pipe我在GUI中看到的只是一个黑屏 (在左上方有下划线,Virtual Box中的这个问题在堆栈溢出中也单独提出,但没有任何帮助)。

最终,一个解决scheme被certificate是非常简单的: 检查你的虚拟机的版本

更确切地说,我从64位Debian的其他人那里获得了一个盒子,但Virtual Box坚持认为它是32位的,我没有注意到。 要更改它,请打开Virtual Box,然后打开terminal并运行

 vagrant up 

等待线路

 default: SSH auth method: private key 

现在你可以按ctrl + C(或等待超时)并运行

 vagrant halt 

您的虚拟机将不会被破坏,所以您可以在Virtual Box的菜单中看到它,但是会closures,所以您可以更改设置。 在菜单中select您的机器,点击“设置” – >“常规”,select适当的“版本”,对我来说,它是“Debian(64位)”。 之后这种types再次vagrant up

如果这是您的情况(或“设置”的不同更改解决您的问题),您可以从修复的一个打字创build新的框

 vagrant package --output mynew.box 

一些更多的细节:主机32位的Ubuntu 12.04,来宾64位的Debian 8.1,虚拟箱5.0.14,stream浪1.8.1

对我来说,这是stream浪汉和虚拟盒子之间的兼容性。

我在Windows 10上,我做了什么,我卸载了stream浪汉和虚拟的盒子

然后安装专门版本为4.3.38的旧版本虚拟盒(安装此版本的扩展包)

然后安装最新版本的stream浪者(目前1.8.5)

之后,它的工作。

如果您不想启用GUI,然后必须稍后禁用它,则还可以从Oracle安装扩展包:

http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack

然后将其放入您的Vagrant文​​件中以启用VRDP:

 vb.customize ["modifyvm", :id, "--vrde", "on"] 

现在,您可以使用RDP按需连接到您的盒子,而不需要SSH运行或GUI始终打开。

VMware提供商的用户的另一种可能的解决scheme:对于我来说,在同一台主机上移除VirtualBox的并行安装后,问题就解决了。 VMware和VirtualBox之间的networking接口显然是相互冲突的

我面临同样的问题。 我通过从BIOS设置启用Virtualization来解决这个问题。

什么对我来说是允许在64位操作系统(Ubuntu 13.10)64位虚拟化从BIOS。

在BIOS设置中检查您的CPU的虚拟化是否启用。

我已经发现,在与VirtualBox的MacOS添加到Vagrantfile将让你走得更远:

 config.vm.provider 'virtualbox' do |vb| vb.customize ['modifyvm', :id, '--cableconnected1', 'on'] end 

FWIW–我的问题是由于使用一个真正的旧的configuration文件,而不是一个新的。 使用新的configuration文件(并因此调整/更改DSL)立即解决了我的问题。

帮助我的是在BIOS中启用虚拟化,因为机器没有启动。

我不会按照虚拟的方式来控制,因为我无论什么时候都可以做什么,我相信stream浪者宁愿你进入另一个terminal,然后做一个:

vagrant halt

停止框。 那么就没有问题回到 VB了。

我遇到了同样的问题,但是没有提到的解决scheme为我工作! 我通过将Vagrant降级到1.6.2来解决它,现在它可以工作了!

我和Vagrant 1.6.5和Virtual Box 4.3.16也有同样的问题。 在https://github.com/mitchellh/vagrant/issues/4470中描述的解决scheme对我来说工作得很好,我只需要删除VirtualBox 4.3.16并安装旧版本4.3.12。