• HOME
  • DOCS
  • WTF
  • TECH
  • LIFE
  • PAGES
    • ARCHIVE
    • TAGS
    • ABOUT
    • FRIENDS
    • RSS
  • TOOLS
    • GEO
    • RANDOM()
    • GOO.GL
    • CSS HEART
Aj's Blog

记录时间溜走的瞬间和折腾过的那些事

Win7+Vagrant+Cygwin环境下VM丢失、总是创建新VM的问题
2015-12-16 @ TECH CygwinVagrantVBOX_USER_HOMEvirtualbox

一、运行环境

win7 x64
cygwin x64
vagrant 1.6.3
virtulabox 4.3.12

二、问题描述

参考:https://github.com/mitchellh/vagrant/issues/1454

cygwin默认用的的bash, 用户目录: [cygwin目录]\home\[Win7系统用户名]\, 如: D:\cygwin\home\Administrator\

先在 .bashrc 中扩展 PATH 增加vagrant的bin目录 D:\vagrant\bin\
vagrant前期准备这里就略了,vagrant init TEST,vagrant up 一切正常

此时用户目录中多出了 .VirtualBox 和 VirtualBox VMs 目录
VM被导入到了 D:\cygwin\home\Administrator\VirtualBox VMs\
VM配置放在了 D:\cygwin\home\Administrator\.VirtualBox\

这就导致了后续你的操作有2中情况会导致刚刚创建的vm变为not created状态

1) 在cygwin下启动vagrant 之前打开了virtualbox
如果进程VBoxSVC.exe还在,加载的WINDOWS下的vbox配置会被保持。
在cygwin下再启动vagrant调用vbox时,用户目录中存储的配置 .VirtualBox 和 VirtualBox VMs不会被加载。
自然你之前创造的vm肯定是找不到了,所以是not created状态

2) 把这2个文件夹删除了
这个没什么好解释的,配置和VM文件都不在了。

三、解决办法

把cygwin下的vbox配置保持和WINDOWS下的配置保持统一,在.bashrc中初始化

    
    #VBOX 配置文件目录
    VBOX_USER_HOME="C:/Users/$USER/.VirtualBox/"
    export VBOX_USER_HOME

    #VBOX VM默认存放目录,可以和WINDOWS下的不同,只是制定VM存放位置
    VBOX_VMS_FOLDER="E:/Vagrant_VMS/"
    vboxmanage setproperty machinefolder $VBOX_VMS_FOLDER
下一篇:   virtualbox debian8 无法映射目录的问题
上一篇:   什么是财务自由
暂无评论

Cancel reply