错误VT-x不适用于Virtualbox内的Vagrant机器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误VT-x不适用于Virtualbox内的Vagrant机器相关的知识,希望对你有一定的参考价值。

我有一个配置为启用VT-x的Ubuntu虚拟机,6个处理器和25 GB RAM。

在虚拟机内部,我正在尝试使用以下配置启动一个流浪汉机器:

master.vm.box = "precise32"
master.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--cpuexecutioncap", "80"]
    vb.memory = 10000
    vb.customize ["modifyvm", :id, "--cpus", "2"]   
    vb.customize ["modifyvm", :id, "--ioapic", "on"]
end

当我启动Vagrant时,我得到错误VT-x未启用。

我尝试了32位和64位版本的Vagrant,但仍然没有运气。

不知道如何在Virtualbox中运行Vagrant机器?

答案

更新:如下所述,您可以使用嵌套的VirtualBox + vagrant,前提是只有1个虚拟CPU分配给嵌套的VM,而嵌套的VM guest虚拟机是32位操作系统。

另一答案

您只能使用一个没有VT-x的虚拟CPU。因此,声明VT-x未启用的错误消息由以下行引起:

vb.customize ["modifyvm", :id, "--cpus", "2"]

用以下工作替换它(Vagrant有一个设置CPU数的简写):

vb.cpus = 1

注意:您只能在另一个VM中运行32位VM。

另一答案

嵌套虚拟盒中的流浪汉

首先,您可以在嵌套的虚拟盒中运行绝对Vagrant。

VT-X支持(与VirtualBox相关)

目前VirtualBox不支持嵌套VT-X。目前有待处理的功能请求(参见:https://www.virtualbox.org/ticket/4032),但截至目前预计不会出现在VirtualBox的新版本中

嵌套VirtualBox中缺少VT-X的后果

在没有VT-X的情况下嵌套有两个后果:

  1. 您不能使用多个CPU,但可以使用vb.cpus = 1使用单个虚拟CPU
  2. 您无法在嵌套的VirtualBox中运行64位VM。
另一答案

您不能将第一个VM用作Virtual Box。这是肯定的。但你可以做的是,制作基于VMware Player 7的第一个VM(Ubuntu),然后就可以设置Vagrant。经过自己的测试和确认。 VMplayer版本7和Virtual Box版本5.0.20。感谢鲁道夫在同一页面上的评论

另一答案

如果您在VirtualBox虚拟机中运行vagrant + VirtualBox,并且您遇到网络问题:

别忘了设置正确的virtual network adapter

我必须将适配器类型设置为Paravirtualized Network (virtio-net)

在设置 - >网络 - >高级,使其工作

另一答案

VirtualBox内的VirtualBox无法正常工作。尝试VMPlayer,然后在内部安装VirtualBox和vagrant。它对我有用。

以上是关于错误VT-x不适用于Virtualbox内的Vagrant机器的主要内容,如果未能解决你的问题,请参考以下文章

VirtualBox 端口转发不适用于 NAT 适配器

“VT-x is not available. (VERR_VMX_NO_VMX)” in VirtualBox

错误消息 This computer doesn't have VT-X/AMD-v enabled

adjustResize 不适用于片段布局内的 EditText 视图

将角半径应用于 Storyboard 内的特定 UIView 角不适用于所有角

为啥我的 Button 样式对象仅适用于按钮内的文本,而不适用于整个按钮?