40 virtualbox virtualization vagrant
到达 ssh 部分时 vagrant up 失败:
myterminal$ vagrant up
[default] VM already created. Booting if its not already running...
[default] Running any VM customizations...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- ssh: 22 => 2222 (adapter 1)
[default] -- db2: 30003 => 30003 (adapter 1)
[default] Cleaning previously set shared folders...
[default] Creating shared folders metadata...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] Failed to connect to VM!
Failed to connect to VM via SSH. Please verify the VM successfully booted
by looking at the VirtualBox GUI.
Run Code Online (Sandbox Code Playgroud)
然后,当我随后尝试使用 vagrant ssh 或 vagrant reload 或类似方法进行连接时,我得到了这个:
myterminal$ vagrant reload
[default] Attempting graceful shutdown of linux...
SSH connection was refused! This usually happens if the VM failed to
boot properly. Some steps to try to fix this: First, try reloading your
VM with `vagrant reload`, since a simple restart sometimes fixes things.
If that doesn't work, destroy your VM and recreate it with a `vagrant destroy`
followed by a `vagrant up`. If that doesn't work, contact a Vagrant
maintainer (support channels listed on the website) for more assistance.
Run Code Online (Sandbox Code Playgroud)
请帮忙!我真的很难过。
亲切的问候,
卢克
小智 26
我在 Vagrant 网站的“入门”中给出的框也遇到了同样的问题。我下面的解决方案适用于本教程的框。
我在这里找到了解决方案:https : //github.com/mitchellh/vagrant/issues/391
config.vm.boot_mode = :guivagrant upsudo /etc/init.d/networking restart, 在/etc/network/interfaces文件中,您现在必须有一个部分#VAGRANT-BEGIN [...]#VAGRANT-ENDvagrant reload在物理机上运行小智 10
我在我的设置中看到了这个问题,并最终将其缩小到我在本地主机文件中添加了一个名称的事实。所以我有:
127.0.0.1 localhost myname myalias
Run Code Online (Sandbox Code Playgroud)
删除了myalias我添加的,它启动正常。感谢@saphirlazuli 提供了与网络相关的线索。
这对我来说是一个间歇性问题,并且肯定似乎与网络有关。我在 Vagrant GitHub 问题#391和#455 中找到了一些更有用的信息。我尝试在 VirtualBox 设置中删除我未使用的仅主机网络(建议作为 GitHub 问题之一的潜在修复),这似乎没有帮助。
以 gui 模式启动(如上一个答案中所述)是调试/修复问题的好方法。我发现这是因为无论出于何种原因,VM 在启动时都无法获取 IP 地址。从 GUI 模式开始,然后登录 (vagrant/vagrant) 并sudo dhclient在来宾操作系统中运行将检索 IP 地址,并且 Vagrant 设置过程将成功完成。
尽管如此,仍在寻找永久修复。
希望这可以帮助!
[编辑添加]:在GitHub 问题 #455中添加了一个有用的建议,其中涉及将以下配置添加到您的Vagrantfile:
config.ssh.max_tries = 150
Run Code Online (Sandbox Code Playgroud)
这目前对我有用,并且似乎是有道理的,因为问题似乎与超时有关 - 增加尝试次数应该会增加 SSH 过程及时成功的可能性。首先这是一个间歇性问题,所以我会保留一段时间的判断,但手指交叉它会起作用!感谢 karel1980 建议修复。
如果vagrant up失败,我建议如下:
config.vm.boot_mode = :gui在您的Vagrantfilechef.log_level = :debugvagrant box repackage foo,vagrant import foo然后添加foo你的Vagrantfile)注意:gui 模式可能有其他问题,例如对我来说,0.7.5当启用 gui 时,没有配置与 vagrant 一起工作。尽管如此,调试实际的盒子仍然很棒。
| 归档时间: |
|
| 查看次数: |
72750 次 |
| 最近记录: |