无头Ubuntu中的Vagrant Up错误:客户机在等待它启动时进入无效状态

时间:2013-10-17 06:19:45

标签: ubuntu state vagrant headless

我需要在无头ubuntu(Ubuntu 12.04.2 LTS-64 Bit)中安装vagrant .Vagrant ver-v1.3.0和Virtual box-4.2.18。添加vagrant包装盒后,当我给出“vagrant up”命令时,我收到以下错误:

Bringing machine 'default' up with 'virtualbox' provider...
[default] Clearing any previously set forwarded ports...
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Booting VM...
[default] Waiting for machine to boot. This may take a few minutes...
The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.

当我搜索此错误消息时,我发现需要修改BIOS以启用VT-x功能。但我不知道如何做它的无头ubuntu远程服务器。也不确定启用VT-x是否能解决问题。

有人可以帮我吗?

13 个答案:

答案 0 :(得分:24)

根据mitchellh

您可以手动启动机器(从GUI)吗?此错误消息通常表示VirtualBox问题。

我的解决方案

我在windows下使用vagrant,我通过简单地杀死所有VirtualBox进程解决了这个问题,然后重新启动VirtualBox GUI,启动VM,然后通常关闭它。

可能是有用的链接

这两个问题可能有所帮助。

https://github.com/mitchellh/vagrant/issues/2157

https://github.com/mitchellh/vagrant/issues/2187也可能有所帮助。

答案 1 :(得分:9)

如果您已经安装了虚拟框4.3.14,那么就存在一个已知的问题"反病毒冲突"。您需要按照本主题中的说明卸载4.3.14并安装4.3.15。

https://forums.virtualbox.org/viewtopic.php?f=6&t=62615

答案 2 :(得分:4)

在我的情况下,我试图通过GUI启动VirtualBox。事实证明,我的系统上没有激活 VT-x / AMD-V硬件加速,后来它无法使用。我必须使用32位分布和this config settings

答案 3 :(得分:4)

很多这些答案都假设您正在使用GUI调试计算机,而问题是关于无头Ubuntu服务器。

相当于查看Virtualbox GUI的是vboxmanage命令,它可以为您提供信息日志。尝试通过VBoxManage直接在Vagrant中工作的东西将为您提供大量的故障排除选项。

在我的情况下,只清理旧虚拟机修复了我的问题。

vboxmanage list vms

这将显示当前已注册的虚拟机虚拟机的名称和UUID。抓住现有机器的UUID并清理它们可以解决问题。

vboxmanage unregistervm $uuid --delete

答案 4 :(得分:2)

当我遇到此错误时,最终为我工作的是检查我的bios选项。我有一个lenovo thinkpad x240,最后发现了一些被禁用的虚拟化选项。

启用后,virtualbox按预期运行。

答案 5 :(得分:0)

我有点晚了,但我有相同的错误信息并通过手动找到有问题的机器的.vmdk并在VirtualBoxManager(或任何你使用的)中打开它来解决它。

答案 6 :(得分:0)

我的系统运行多个虚拟盒实例的计划外硬关机,包括Vagrant(特别是VVV)在尝试vagrant up时产生相同的错误输出。

使用vagrant reload命令解决它。

现在有几个WordPress开发站点备份并运行。

答案 7 :(得分:0)

我最近遇到了这个问题,因为我在过去几个月里使用过vagrant和virtualbox而没有任何错误。

当我在virtualbox GUI中启动vm时,它会显示一个错误对话框。通过谷歌搜索错误消息,我发现它可能是一个Avira(这是一个反病毒软件)的错误。

此处描述的解决方案: https://forums.virtualbox.org/viewtopic.php?f=6&t=67840&start=195#p347694

  • 打开Avira配置并转到常规 - >安全
  • 禁用产品保护选项(全部三种)。
  • 按确定按钮保存配置。
  • 按开始 - >设置 - >控制面板 - >系统。
  • 开始"设备管理器"在选项卡"硬件"。
  • In" View"菜单激活选项"显示隐藏的设备"。
  • 现在选择节点"非即插即用驱动程序"。
  • 右键点击驱动程序" avipbb"并选择"属性"。
  • 在标签" Driver"选择选项"已禁用"然后单击“确定”。
  • 全部关闭并重新启动。

它对我有用。

答案 8 :(得分:0)

对我而言,在将Avast Free Antivirus 升级为 v11.1.2253 之后,这种情况才刚刚开始发生。

虽然我已经启用了VT-X选项,但是当使用VirtualBox Manager启动一个框时,我一直在收到错误(VERR_VMX_MSR_LOCKED_OR_DISABLED)。

另一个问题是当盒子是64位时,VirtualBox Manager显示操作系统Ubuntu(32位)。

解决方案是禁用'启用硬件辅助虚拟化'在Avast Antivirus中,至少在Avast团队解决之前。

来源: Avast论坛> Avast Free 11.1.2253 & VirtualBox 5.0.14

供将来参考:VirtualBox可能与使用虚拟化的其他程序冲突:常见的罪魁祸首是系统级调试程序,其他VM平台和一些常驻防病毒应用程序,如[VirtualBox论坛]所述( https://forums.virtualbox.org/viewtopic.php?f=1&t=62339

答案 9 :(得分:0)

在我的案例中,Vagrant或VirtualBox或Laravel的Homestead已经搞砸了。在vagrant up命令期间,我看到它在我的VM文件夹中生成了一些settler_文件夹,然后它将文件夹重命名为homestead-7,然后尝试运行该机器......但是该机器的磁盘仍然指向到settler_文件夹中的路径!我必须手动删除附加的磁盘,然后连接正确的磁盘。

答案 10 :(得分:0)

就我而言:

  • 更新vbox
  • 当运行流浪汉时,操作系统正在启动并等待网络连接,永远需要
  • 修复,打开vbox,显示活动虚拟机,单击网络适配器图标,禁用以太网连接,启用nat。
  • vm继续启动,vagrant可以通过ssh连接

答案 11 :(得分:0)

我遇到了同样的问题,我尝试过使用vagrant destroy,然后再次尝试vagrant up及其对我有用

答案 12 :(得分:0)

我遇到了同样的错误。我尝试了多种方法,例如重新安装 vagrant 和 virtualbox,在 bios 中启用虚拟化等:- 没有任何效果。

My OS: ubuntu 20.04
virtual box: 6.1
Vagrant: 2.2.9

当我看到 VBox.log 时。我看到以下错误

00:00:03.918526 VMMDev: Guest Log: BIOS: CDROM boot failure code : 0003
00:00:03.918663 VMMDev: Guest Log: BIOS: Boot from CD-ROM failed
00:00:03.918841 VMMDev: Guest Log: BIOS: Boot : bseqnr=3, bootseq=

当我在上面搜索时,我知道我必须添加新驱动器。我关注了这个https://www.techrepublic.com/article/how-to-add-new-drives-to-a-virtualbox-virtual-machine/

我做了以下。 VirtaulBox->选择你的虚拟机->设置->存储->控制器SATA->点击标志(flap-disk和下面的加号)->add-path 并删除空目录。

现在可以使用了