2012-02-05 56 views
4

我使用虚拟箱+宝石流浪者
一切都很好。
我已经打包了我的包装盒。现在我已经在同一个项目中再次部署了这个盒子。
Capistrano部署在Virtual Machne中

和Capistrano的已经输出错误:

*** [err :: 33.33.33.10] creating symbolic link `/vagrant/demoapp/current/log' 
*** [err :: 33.33.33.10] : Read-only file system 

https://gist.github.com/1746250(误差+ deploy.rb)

我已经设置须藤搭配chmod 777 -R 1vagrant/
但它仍然doestn't工作。

会发生什么?

流浪宝石的作者
+0

VM文件系统是否可写入?你能手动创建/ vagrant/demoapp/current/log文件夹吗? (与/ vagrant/demoapp/shared/log相同) – icanhazbroccoli 2012-02-05 16:18:36

+0

再次。是的我可以流浪@lucidid:/ vagrant/demoapp/shared $ rm -rf log/ vagrant @ lucid32:/ vagrant/demoapp/shared $ mkdir log mkdir/vagrant/demoapp/current/log cap deploy - 同样的错误 – itsnikolay 2012-02-05 16:23:55

+0

hmm,你可以检查这个命令:ssh [email protected]'ln -s/vagrant/demoapp/shared/log/vagrant/demoapp/current/log'? – icanhazbroccoli 2012-02-05 16:34:22

回答

0

你使用VirtualBox 4.1.8?降级到VirtualBox 4.1.6解决了我的问题。

7

有一种解决方法可以使共享文件夹中的符号链接再次在VirtualBox 4.1.8+上运行。基本上你需要发出命令:

VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1 

您可以通过添加以下内容到Vagrantfile的Vagrant::Config.run块流浪的情况下做到这一点:

config.vm.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME", "1"] 

更多信息,请VirtualBox bug #10085找到。

请注意,共享setextradata技巧的评论者忘记告诉您密钥名称需要SHARE_NAME。我发现了这个digging through the C code

+0

什么是SHARE_NAME?例如:我在我的vagrantfile中有这样的内容:config.vm.synced_folder“。”,“/ var/www/manager” – julestruong 2015-10-14 16:52:59