Vagrant 宅地流浪汉未能启动虚拟机:“;VMMR0.r0模块版本与VBoxVMM.dll/so/dylib不匹配;
我试着遵循以下步骤,将xdebug安装到vagrant中,以连接到atom中 因此,在我的Vagrant 宅地流浪汉未能启动虚拟机:“;VMMR0.r0模块版本与VBoxVMM.dll/so/dylib不匹配;,vagrant,ubuntu-16.04,vagrantfile,Vagrant,Ubuntu 16.04,Vagrantfile,我试着遵循以下步骤,将xdebug安装到vagrant中,以连接到atom中 因此,在我的Vagrantfile中,我设置了以下设置: config.vm.network :forwarded_port, guest: 9000, host: 9000 结果如下Vagrantfile为: # -*- mode: ruby -*- # vi: set ft=ruby : require 'json' require 'yaml' VAGRANTFILE_API_VERSION ||= "2"
Vagrantfile
中,我设置了以下设置:
config.vm.network :forwarded_port, guest: 9000, host: 9000
结果如下Vagrantfile
为:
# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'json'
require 'yaml'
VAGRANTFILE_API_VERSION ||= "2"
confDir = $confDir ||= File.expand_path("vendor/laravel/homestead", File.dirname(__FILE__))
homesteadYamlPath = File.expand_path("Homestead.yaml", File.dirname(__FILE__))
homesteadJsonPath = File.expand_path("Homestead.json", File.dirname(__FILE__))
afterScriptPath = "after.sh"
aliasesPath = "aliases"
require File.expand_path(confDir + '/scripts/homestead.rb')
Vagrant.require_version '>= 1.9.0'
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
if File.exist? aliasesPath then
config.vm.provision "file", source: aliasesPath, destination: "/tmp/bash_aliases"
config.vm.provision "shell" do |s|
s.inline = "awk '{ sub(\"\r$\", \"\"); print }' /tmp/bash_aliases > /home/vagrant/.bash_aliases"
end
end
if File.exist? homesteadYamlPath then
settings = YAML::load(File.read(homesteadYamlPath))
elsif File.exist? homesteadJsonPath then
settings = JSON.parse(File.read(homesteadJsonPath))
else
abort "Homestead settings file not found in #{confDir}"
end
Homestead.configure(config, settings)
if File.exist? afterScriptPath then
config.vm.provision "shell", path: afterScriptPath, privileged: false, keep_color: true
end
if defined? VagrantPlugins::HostsUpdater
config.hostsupdater.aliases = settings['sites'].map { |site| site['map'] }
end
config.vm.network :forwarded_port, guest: 9000, host: 9000
end
我试图通过以下命令启动它:
vagrant up --provision
find / -name '*VMMR0*' -o -name '*VBoxVMM*'
但我得到了以下错误:
执行Vagrant使用的CLI时出错
用于控制VirtualBox。命令和stderr如下所示
命令:[“startvm”、“12135e8c-7547-4c7e-a25c-58a7136fb600”、“类型”、“无头”]
Stderr:VBoxManage:错误:VMMR0.r0模块版本与VBoxVMM.dll/so/dylib不匹配。如果您刚刚升级VirtualBox,请终止所有虚拟机,并确保VBoxNetDHCP和VBoxNetNAT均未运行。然后再试一次。如果此错误仍然存在,请尝试重新安装VirtualBox。(版本不匹配)
VBoxManage:错误:详细信息:代码NS\U错误\U故障(0x80004005)、组件控制台包装、接口IConsole
我的Virtualbox版本是5.1.38_Ubuntur122592
one(从命令VboxManage-v
)
您知道如何修复它吗?您应该遵循中提到的这些步骤。这些步骤是: 首先卸载virtualbox:
sudo apt-get remove virtualbox virtualbox-ose virtualbox-qt
然后运行以下命令:
vagrant up --provision
find / -name '*VMMR0*' -o -name '*VBoxVMM*'
然后重新安装:
sudo apt-get install virtualbox virtualbox-qt
然后将cd
复制到项目的根路径并运行
vagrant up
在我的情况下,我必须重复这些步骤两次才能使其正常工作。我尝试了这一步,但最终无法创建仅限主机的适配器。我在您的VagrantFile中没有看到任何网络设置另一个适用于多人的one-ines解决方案:
sudo killall VBoxHeadles
@vulcanraven这在应用后对我有效迪米特里奥斯的解决方案。