首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用Vagrant时,如何在Windows和Linux之间共享同一个VM?

在使用Vagrant时,如何在Windows和Linux之间共享同一个VM?
EN

Stack Overflow用户
提问于 2014-10-21 08:38:36
回答 2查看 822关注 0票数 2

我有两台主机,一台是Windows的,一台是Linux的,都安装了Vagrant和VMware工作站,一切都在他们自己的环境中运行得很好。但是,当我在Linux中创建来宾虚拟机并在Windows中执行vagrant up时,Vagrant将删除(!).vagrant目录中的所有内容并尝试获取基本映像。如果我在Windows中执行vagrant initvagrant up,然后在Linux中执行vagrant up,也会发生同样的事情。如何防止这种情况发生?有没有办法使用Vagrant在Windows和Linux之间共享相同的虚拟机?

我使用的是Windows7,Ubuntu14.04,Vagrant 1.6.5,VMware工作站10.0.3。所有来宾操作系统都会出现此问题。

EN

回答 2

Stack Overflow用户

发布于 2014-10-21 15:39:45

.vagrant目录的内容可以是特定于操作系统的,当然也可以是VMware的内部状态。

我不认为有简单的方法可以在两台主机之间共享相同的VM实例。Vagrant的方法是对VM进行provision,这样您只需共享基础机器,然后每个用户/OS就可以启动自己的实例。

另一种选择是使用vagrant packagevagrant box add来传输已配置的机器,但这不适用于VMware提供程序。

另一种方法是使用像AWSDigital Ocean这样的云提供商,然后直接使用ssh。或者甚至可以使用vagrant-managed-servers插件。您的问题没有提示您使用Vagrant VM做什么,所以很难说出什么是最佳解决方案。

票数 1
EN

Stack Overflow用户

发布于 2020-04-20 07:06:19

下面使用Windows10和Ubuntu18.04的VirtualBox Vagrant provider进行了测试,在双引导设置中使用共享的NTFS盘,其中在Windows中的D:\可以作为/mnt/d/在Linux中访问。

首先,将Windows和Linux中的VAGRANT_HOME环境变量设置为相同的位置(但如果我没记错,这不是必须的),例如:

D:\.vagrant.d

  • Linux,/mnt/d/.vagrant.d

  • 窗口

然后,在下面的示例中,从其中一个OSes创建一台新计算机:

代码语言:javascript
复制
$ cd /mnt/d/vagrant_machines/machine1
$ vagrant init
$ vagrant up

然后在Windows中启动,并首先备份D:\vagrant_machines\machine1\.vagrant,以防其内容被意外删除。

然后从VirtualBox注册现有的VM,例如D:\virtualbox_machines\machine1_default_1587262647987_91775\machine1_default_1587262647987_91775.vbox

然后运行以下命令:

代码语言:javascript
复制
>vagrant.exe status
The VirtualBox VM was created with a user that doesn't match the
current user running Vagrant. VirtualBox requires that the same user
be used to manage the VM that was created. Please re-run Vagrant with
that user. This is not a Vagrant issue.

The UID used to create the VM was: 1000
Your UID is: 0

并将D:\vagrant_machines\machine1\.vagrant\machines\default\virtualbox\creator_uid更新为您当前的UID (本例中为0)。

然后启动机器:

代码语言:javascript
复制
>vagrant status
>vagrant up

最后,请注意,每次切换OSes时都需要更新creator_uid,您可能希望自动执行此操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26477186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档