首页 > 代码库 > 使用vagrant在挂载的移动硬盘上建立box时遇到的问题

使用vagrant在挂载的移动硬盘上建立box时遇到的问题

目前开发团队已经大规模在使用vagrant。今天想直接在移动硬盘上建一个后端服务调用的box给其他同学用,就直接把VAGRANT_HOME指向了移动硬盘。

export VAGRANT_HOME=/media/floating/data_disk/.vagrant.d

然后就一路标准操作:

vagrant box add backend_services_base ~/ubuntu-14.04-amd64-vbox.box
mkdir backend_services_base
cd backend_services_base
vagrant init backend_services_base
vagrant up

这时候问题来了:


vagrant一直卡在这里,直到超时。

起先以为是BIOS里虚拟化设置没打开,导致virtualbox无法正常虚拟化,检查之后发现虚拟化设置并没有disabled。更神奇的是在VagrantFile中将gui开关打开再运行,发现virtualbox正常启动,而且sshd服务也正常。

正一头雾水的时候,突然想起来移动硬盘是以root用户加载的,会不会是这个原因导致的呢?翻Vagrant的文档,果然有问题。

由于vagrant会使用私钥通过ssh访问虚拟机,而ssh协议要求私钥文件的owner必须是当前用户。将private key path重定向到当前用户的home下,一次通过。:)

config.ssh.private_key_path="/home/floating/.vagrant.d/insecure_private_key"


使用vagrant在挂载的移动硬盘上建立box时遇到的问题