在 wsl 上使用 virtualbox 的 vagrant VERR_PATH_NOT_FOUND

vagrant with virtualbox on wsl VERR_PATH_NOT_FOUND

我尝试 运行 来自 wsl 的 vagrant :

Windows 10 专业版 1703 内部版本 15063.540

Ubuntu 16.04.2 LTS

无业游民版本:1.9.7

Virtualbox 版本:5.1.26r117224

添加到我的 bachrc

export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1"

并且我已将 virtualbox 添加到 windows

中的路径

在 运行 vagrant up 我得到了这个错误

Stderr: VBoxManage.exe: error: RawFile#0 failed to create the raw output file /mnt/d/Projects/GOPATH/src/github.com/hyperledger/Fabric/devenv/ubuntu-xenial-16.04-cloudimg-console.log (VERR_PATH_NOT_FOUND)

如果我尝试直接从 Virtualbox 启动虚拟机

Failed to open a session for the virtual machine hyperledger.

RawFile#0 failed to create the raw output file /mnt/d/Projects/GOPATH/src/github.com/hyperledger/Fabric/devenv/ubuntu-xenial-16.04-cloudimg-console.log (VERR_PATH_NOT_FOUND).

Result Code: E_FAIL (0x80004005) Component: ConsoleWrap Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

我找到了解决方案

待补充

config.vm.provider "virtualbox" do |vb|
  vb.customize [ "modifyvm", :id, "--uartmode1", "disconnected" ]
end

到 vagrant 文件

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

但是,您也可以通过此处所示的 VirtualBox UI 执行此操作,即所示的“断开连接”将完成同样的事情。 vb.customize - .customize 不适用于某些 vagrant 版本。

我通过关闭虚拟机配置串行端口解决了同样的问题

如果您需要串行端口,可以将其保持启用状态,但更改日志文件路径以匹配您的文件系统